Class: Request

Обгортка для XMLHttpRequest.

Реалізує:

Chain, Events, Options

Синтаксис:

var myRequest = new Request([options]);

Аргументи:

  1. options - (object, optional) Див. нижче.

Опції:

  • url - (string: defaults to null) URL для запиту.
  • method - (string: defaults to 'post') HTTP-метод для запиту, може бути 'post' або 'get'.
  • data - (string: defaults to '') Типові дані для Request:send, використовуються, коли дані не передано.
  • link - (string: defaults to 'ignore') Може бути 'ignore', 'cancel' та 'chain'.
    • 'ignore' - Будь-які виклики start під час виконання запиту будуть проігноровані. (Синонім 'wait': true з 1.11)
    • 'cancel' - Будь-які виклики start під час виконання запиту матимуть пріоритет над поточним запитом. Новий запит почнеться негайно, скасовуючи поточний. (Синонім 'wait': false з 1.11)
    • 'chain' - Будь-які виклики start під час виконання запиту будуть додані до ланцюга і виконаються, як тільки поточний запит завершиться, один за одним.
  • async - (boolean: defaults to true) Якщо false, запити будуть синхронними і заморожують браузер під час запиту.
  • encoding - (string: defaults to 'utf-8') Кодування для встановлення в заголовку запиту.
  • headers - (object) Об'єкт для встановлення заголовків запиту.
  • isSuccess - (function) Перевизначає вбудовану функцію isSuccess.
  • evalScripts - (boolean: defaults to true) Якщо true, теги script у відповіді будуть обчислені.
  • evalResponse - (boolean: defaults to false) Якщо true, вся відповідь буде обчислена. Відповіді з content-type javascript обчислюються автоматично.
  • emulation - (boolean: defaults to true) Якщо true, інші методи крім 'post' або 'get' додаються як post-дані з назвою '_method' (використовується в rails)
  • urlEncoded - (boolean: defaults to true) Якщо true, заголовок content-type встановлюється як www-form-urlencoded + encoding

Події:

request

Спрацьовує, коли Request відправлено.

Сигнатура:
onRequest()

complete

Спрацьовує, коли Request завершено.

Сигнатура:
onComplete()

cancel

Спрацьовує, коли запит скасовано.

Сигнатура:
onCancel()

success

Спрацьовує, коли Request завершено успішно.

Сигнатура:
onSuccess(responseText, responseXML)
Аргументи:
  1. responseText - (string) Повернений текст від запиту.
  2. responseXML - (mixed) XML відповіді від запиту.

failure

Спрацьовує, коли запит не вдався (код помилки).

Сигнатура:
onFailure(xhr)
Аргументи:

xhr - (XMLHttpRequest) Екземпляр транспорту.

exception

Спрацьовує, коли встановлення заголовка запиту не вдалося.

Сигнатура:
onException(headerName, value)
Аргументи:
  1. headerName - (string) Назва заголовка, який не вдалося встановити.
  2. value - (string) Значення заголовка, який не вдалося встановити.

Властивості:

  • running - (boolean) True, якщо запит виконується.
  • response - (object) Object з ключами text та XML. Доступно у події 'success'.

Повертає:

  • (object) Новий екземпляр Request.

Приклад:

var myRequest = new Request({method: 'get', url: 'requestHandler.php'});
myRequest.send('name=john&lastname=dorian');

Див. також:

Request Method: setHeader

Додає або змінює заголовок для запиту. Не перевизначає заголовки з опцій.

Синтаксис:

myRequest.setHeader(name, value);

Аргументи:

  1. name - (string) Назва заголовка.
  2. value - (string) Значення для призначення.

Повертає:

  • (object) Цей екземпляр Request.

Приклад:

var myRequest = new Request({url: 'getData.php', method: 'get', headers: {'X-Request': 'JSON'}});
myRequest.setHeader('Last-Modified','Sat, 1 Jan 2005 05:00:00 GMT');

Request Method: getHeader

Повертає заданий заголовок відповіді або null, якщо не знайдено.

Синтаксис:

myRequest.getHeader(name);

Аргументи:

  1. name - (string) Назва заголовка для отримання значення.

Повертає:

  • (string) Значення отриманого заголовка.
  • (null) null якщо заголовок не знайдено.

Приклад:

var myRequest = new Request(url, {method: 'get', headers: {'X-Request': 'JSON'}});

var headers = myRequest.getHeader('X-Request'); //Returns 'JSON'.

Request Method: send

Відкриває з'єднання Request і відправляє надані дані з вказаними опціями.

Синтаксис:

myRequest.send([options]);

Аргументи:

  1. options - (object, optional) Опції для відправленого Request. Також приймає дані як рядок запиту для сумісності.

Повертає:

  • (object) Цей екземпляр Request.

Приклади:

var myRequest = new Request({url: 'http://localhost/some_url'}).send("save=username&name=John");

Request Method: cancel

Скасовує поточний виконуваний запит, якщо такий є.

Синтаксис:

myRequest.cancel();

Повертає:

  • (object) Цей екземпляр Request.

Приклад:

var myRequest = new Request({url: 'mypage.html', method: 'get'}).send('some=data');
myRequest.cancel();

Hash: Element.Properties

див. Element.Properties

Element Property: send

Setter

Встановлює типовий екземпляр Request для Element. Корисно при роботі з формами.

Синтаксис:

el.set('send'[, options]);

Аргументи:

  1. options - (object) Опції Request.

Повертає:

  • (element) Початковий елемент.

Приклад:

myForm.set('send', {url: 'contact.php', method: 'get'});
myForm.send(); //Sends the form.

Getter

Повертає раніше встановлений екземпляр Request (або новий з типовими опціями).

Синтаксис:

el.get('send'[, options]);

Аргументи:

  1. options - (object, optional) Опції Request. Якщо передано, цей метод створить новий екземпляр класу Request.

Повертає:

  • (object) Екземпляр Request.

Приклад:

el.get('send', {method: 'get'});

el.send();
el.get('send'); //Returns the Request instance.

Native: Element

Користувацький Native для дозволу всіх його методів для будь-якого DOM-елемента через функцію долара $.

Element Method: send

Відправляє форму або контейнер інпутів з HTML-запитом.

Синтаксис:

myElement.send(url);

Аргументи:

  1. url - (string, optional) URL, куди відправити форму або "контейнер інпутів". Якщо url опущено, використовується action форми. url не може бути опущеним для "контейнера інпутів".

Повертає:

  • (element) Цей Element.

Приклад:

HTML
<form id="myForm" action="submit.php">

    <p>
        <input name="email" value="bob@bob.com">
        <input name="zipCode" value="90210">

    </p>
</form>
JavaScript
$('myForm').send();

Примітка:

  • URL береться з атрибута action форми.

Эта документация распостраняется на правах Attribution-NonCommercial-ShareAlike 3.0 License.
Оригинал документации на английском.
© Linux.ria.com, 2008-2026