Книга: Выразительный JavaScript
Отправка запроса
Отправка запроса
Чтобы отправить простой запрос, мы создаём объект запроса с конструктором XMLHttpRequest и вызываем методы open и send.
var req = new XMLHttpRequest();
req.open("GET", "example/data.txt", false);
req.send(null);
console.log(req.responseText);
// ? This is the content of data.txt
Метод open
настраивает запрос. В нашем случае мы решили сделать GET
запрос на файл example/data.txt. URL, не начинающиеся с названия протокола (например, http:) называются относительными, то есть они интерпретируются относительно текущего документа. Когда они начинаются со слэша (/
), они заменяют текущий путь – часть после названия сервера. В ином случае часть текущего пути вплоть до последнего слэша помещается перед относительным URL.
После открытия запроса мы можем отправить его методом send
. Аргументом служит тело запроса. Для запросов GET
используется null
. Если третий аргумент для open
был false
, то send
вернётся только после того, как был получен ответ на наш запрос. Для получения тела ответа мы можем прочесть свойство responseText
объекта request
.
Можно получить из объекта response
и другую информацию. Код статуса доступен в свойстве status
, а текст статуса – в statusText
. Заголовки можно прочесть из getResponseHeader
.
var req = new XMLHttpRequest();
req.open("GET", "example/data.txt", false);
req.send(null);
console.log(req.status, req.statusText);
// ? 200 OK
console.log(req.getResponseHeader("content-type"));
// ? text/plain
Названия заголовков не чувствительны к регистру. Они обычно пишутся с заглавной буквы в начале каждого слова, например “Content-Type”, но “content-type” или “cOnTeNt-TyPe” будут описывать один и тот же заголовок.
Браузер сам добавит некоторые заголовки, такие, как “Host” и другие, которые нужны серверу, чтобы вычислить размер тела. Но вы можете добавлять свои собственные заголовки методом setRequestHeader
. Это нужно для особых случаев и требует содействия сервера, к которому вы обращаетесь – он волен игнорировать заголовки, которые он не умеет обрабатывать.
- 11.6. Отправка запросов HTTP POST с применением NSURLConnection
- Открытие файла и отправка его в FIFO клиента
- Отправка данных в списки SharePoint по электронной почте
- 8.4.2. Только отправка почты
- Создание и отправка сообщений
- Практическая работа 22. Создание, отправка и прием почтовых сообщений
- Основные сведения о запросах
- Создание и отправка почтового сообщения
- Двусмысленность в запросах JOIN
- Получение, создание и отправка электронной корреспонденции
- Отправка SMS
- Отправка электронной почты с использованием списка SharePoint Контакты