русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Отправка запроса


Дата добавления: 2015-07-09; просмотров: 546; Нарушение авторских прав


 

После того как объект XMLHttpRequest создан, начинается следующий этап – от_ правка запроса веб_серверу. Этот процесс сам по себе также состоит из несколь_ ких этапов. В первую очередь нужно вызвать метод open(), которому передается URL запроса и метод выполнения HTTP_запроса. Большая часть HTTP_запро_ сов выполняется методом GET, который просто загружает содержимое по задан_ ному URL_адресу. Другой, не менее полезный метод – POST; этот метод исполь_ зуется в основном HTML_формами: он позволяет включать в текст запроса имена и значения переменных. Еще один интересный метод – HEAD: он просто запра_ шивает у сервера заголовки, соответствующие заданному URL_адресу. Это по_ зволяет сценариям проверять, например, время последнего изменения докумен_ та без загрузки содержимого этого документа. Указать метод и URL_адрес запро_ са можно следующим образом:

 



request.open("GET", url, false);


 

По умолчанию метод open() настраивает объект XMLHttpRequest на выполнение асинхронного запроса. Если передать ему в третьем аргументе значение false, запрос будет выполнен синхронно. Вообще, предпочтительнее использовать


 

498 Глава 20. Работа с протоколом HTTP

асинхронные запросы, но синхронные запросы выполняются проще, поэтому наше рассмотрение мы начнем с них.

 



Помимо третьего необязательного аргумента метод open() может принимать имя и пароль в четвертом и пятом аргументах. Они используются для выполнения запроса к серверу, требующему авторизации.

 



Метод open() не отправляет запрос, он просто сохраняет свои аргументы для по_ следующего использования, когда будет производиться фактическая отправка запроса. Прежде чем отправить запрос, необходимо настроить некоторые заго_ ловки запроса. Вот несколько примеров:1

 



request.setRequestHeader("User_Agent", "XMLHttpRequest"); request.setRequestHeader("Accept_Language", "en"); request.setRequestHeader("If_Modified_Since", lastRequestTime.toString());

 



Обратите внимание: веб_броузер автоматически добавляет к создаваемому за_ просу все необходимые cookies. Явно настраивать заголовок "Cookie" может по_ требоваться только при необходимости отправить на сервер подложный cookie.

 



Наконец, после создания объекта запроса вызовом метода open() и установки не_ обходимых заголовков можно выполнить отправку запроса:

 



request.send(null);

 



В качестве аргумента функции send() передается тело запроса. Для HTTP_запро_ сов GET всегда используется значение null. Однако для запросов POST аргумент должен содержать данные формы, отправляемой на сервер (см. пример 20.5). Пока мы просто будем передавать значение null. (Обратите внимание: значение null должно передаваться обязательно. Объект XMLHttpRequest является клиент_ ским, по крайней мере в броузере Firefox, его методы не допускают отсутствия аргументов, что вполне допустимо в обычных JavaScript_функциях.)

 





<== предыдущая лекция | следующая лекция ==>
Создание объекта запроса | Получение синхронного ответа


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.206 сек.