Чтение онлайн

на главную - закладки

Жанры

JavaScript. Подробное руководство, 6-е издание
Шрифт:

// Функция обработки ответа после начала его получения

request.on("response", function(response) {

// Указать кодировку, чтобы тело возвращалось как строка, а не байты

response.setEncoding("utf8");

// Для сохранения тела ответа по мере получения

var body =
response.on("data", function(chunk) { body += chunk; });

//
По окончании тела ответа вызвать функцию обратного вызова

response.on("end", function { if (callback)

callback(response.statusCode, response.headers, body);

));

});

};

// Простой HTTP POST-запрос с данными в теле запроса

exports.post = function(url, data, callback) {

// Разобрать URL и получить необходимые фрагменты

url = requiге('url').parse(url);

var hostname = url.hostname, port = url.port || 80;

var path = url.pathname, query = url.query;

if (query) path += "?" + query;

// Определить тип данных, отправляемых в теле запроса var type;

if (data == null) data = "";

if (data instanceof Buffer) // Двоичные данные

type = "application/octet-stream";

else if (typeof data === "string”) // Строковые данные

type = "text/plain; charset=UTF-8";

else if (typeof data === "object") { // Пары имя/значение

data = require("querystring").stringify(data);

type = "application/x-www-form-urlencoded";

}

// Выполнить POST-запрос и отправить тело запроса

var client = require("http").createClient(port, hostname);

var request = client.request("POST", path, {

"Host": hostname,

"Content-Type": type

}):

request.write(data); // Отправить тело запроса

request.end;

request.on("response", function(response) { //
Обработать ответ

response.setEncoding("utf8"); // Предполагается текст

var body = "" // Для хранения тела ответа

response.on("data", function(chunk) { body += chunk; });

response.on("end", function { // По завершении вызвать обработчик

if (callback)

callback(response.statusCode, response.headers, body);

});

});

II

Клиентский JavaScript

В данной части книги в главах с 13 по 22 язык JavaScript описан в том виде, в котором он реализован в веб-броузерах. В этих главах вводится много новых JavaScript-объектов, представляющих окна, документы и содержимое документов в веб-броузерах. В них также описываются важные прикладные интерфейсы для организации сетевых взаимодействий, сохранения и извлечения данных и рисования графических изображений в веб-приложениях.

• Глава 13 «JavaScript в веб-броузерах»

• Глава 14 «Объект Window»

• Глава 15 «Работа с документами»

• Глава 16 «Каскадные таблицы стилей»

• Глава 17 «Обработка событий»

• Глава 18 «Работа с протоколом HTTP»

• Глава 19 «Библиотека jQuery»

• Глава 20 «Сохранение данных на стороне клиента»

• Глава 21 «Работа с графикой и медиафайлами на стороне клиента»

• Глава 22 «Прикладные интерфейсы HTML5»

13 JavaScript в веб-броузерах

Первая часть этой книги была посвящена базовому языку JavaScript. Теперь мы перейдем к тому языку JavaScript, который используется в веб-броузерах и обычно называется клиентским JavaScript (client-side JavaScript). Большинство примеров, которые мы видели до сих пор, будучи корректным JavaScript-кодом, не зависели от какого-либо контекста; это были JavaScript-фрагменты, не ориентированные на запуск в какой-либо определенной среде. Эта глава описывает такой контекст.

До обсуждения JavaScript давайте поближе познакомимся с веб-страницами, отображаемыми в веб-броузерах. Некоторые страницы представляют статическую информацию; их можно называть документами. (Представление такой статической информации может быть дополнено динамическим поведением с помощью JavaScript, но сама по себе информация остается статической.) Другие страницы больше похожи на приложения, чем на документы. Эти страницы способны динамически загружать новую информацию по мере необходимости, они могут состоять преимущественно из графических изображений, могут действовать без подключения к серверу, сохранять данные локально и, как следствие, способны восстанавливать свое состояние при повторном посещении. Имеются также вебстраницы, которые занимают промежуточное положение и объединяют в себе особенности документов и приложений.

Поделиться:
Популярные книги

Эйнштейн. Его жизнь и его Вселенная

Айзексон Уолтер
Документальная литература:
биографии и мемуары
5.50
рейтинг книги
Эйнштейн. Его жизнь и его Вселенная

Телохранитель Генсека. Том 1

Алмазный Петр
1. Медведев
Фантастика:
попаданцы
альтернативная история
7.17
рейтинг книги
Телохранитель Генсека. Том 1

Дом в овраге

Варго Александр
MYST. Черная книга 18+
Детективы:
триллеры
9.14
рейтинг книги
Дом в овраге

Стеллар. Компиляция. Книги 1-9

Прокофьев Роман Юрьевич
Стеллар
Фантастика:
киберпанк
рпг
постапокалипсис
технофэнтези
5.25
рейтинг книги
Стеллар. Компиляция. Книги 1-9

Соть

Леонов Леонид Максимович
Проза:
советская классическая проза
5.00
рейтинг книги
Соть

Сфабрикованный Иисус

Эванс Крейг
Религия. Настоящее христианство
Документальная литература:
критика
5.00
рейтинг книги
Сфабрикованный Иисус

Первый среди равных. Книга XII

Бор Жорж
12. Первый среди Равных
Фантастика:
аниме
фэнтези
фантастика: прочее
попаданцы
5.00
рейтинг книги
Первый среди равных. Книга XII

Об идолах и идеалах

Ильенков Эвальд Васильевич
Научно-образовательная:
философия
6.25
рейтинг книги
Об идолах и идеалах

Оптимизация BIOS. Полный справочник по всем параметрам BIOS и их настройкам

Вонг Адриан
Компьютеры и Интернет:
программирование
5.00
рейтинг книги
Оптимизация BIOS. Полный справочник по всем параметрам BIOS и их настройкам

Шайтан Иван 6

Тен Эдуард
6. Шайтан Иван
Фантастика:
попаданцы
альтернативная история
историческое фэнтези
7.50
рейтинг книги
Шайтан Иван 6

Инженер Петра Великого

Гросов Виктор
1. Инженер Петра Великого
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Инженер Петра Великого

Тринадцатый IV

NikL
4. Видящий смерть
Фантастика:
боевая фантастика
попаданцы
6.25
рейтинг книги
Тринадцатый IV

Личность и Абсолют

Лосев Алексей Федорович
Научно-образовательная:
философия
6.25
рейтинг книги
Личность и Абсолют

Газлайтер. Том 15

Володин Григорий Григорьевич
15. История Телепата
Фантастика:
боевая фантастика
попаданцы
5.75
рейтинг книги
Газлайтер. Том 15