Spec-Zone.ru › Dart 2

dart:html

Класс HttpRequest

Клиентский XHR-запрос для получения данных с URL, официально известный как XMLHttpRequest.

HttpRequest можно использовать для получения данных по протоколам HTTP и FTP; он также полезен для обновления страниц в стиле AJAX.

Самый простой способ получить содержимое текстового файла, например файла в формате JSON, — использовать getString. Например, следующий код получает содержимое файла JSON и выводит его длину:

var path = 'myData.json';
HttpRequest.getString(path).then((String fileContents) {
  print(fileContents.length);
}).catchError((error) {
  print(error.toString());
});

Получение данных с других серверов

По соображениям безопасности браузеры ограничивают запросы, выполняемые встроенными приложениями. При поведении этого класса по умолчанию код, выполняющий запрос, должен быть загружен с того же источника (доменного имени, порта и протокола прикладного уровня), что и запрашиваемый ресурс. В приведённом выше примере файл myData.json должен находиться в том же каталоге, что и использующее его приложение.

Другие ресурсы

  • Динамическое получение данных — учебное руководство по загрузке данных из статического файла или с сервера.
  • Статья о работе с HttpRequest в Dart
  • XMLHttpRequest в JS
  • Использование XMLHttpRequest
Наследование
  • Object
  • EventTarget
  • HttpRequestEventTarget
  • HttpRequest
Аннотации
  • @Native("XMLHttpRequest")

Конструкторы

HttpRequest()
фабричный
Общий конструктор для запросов любого типа (GET, POST и т. д.).

Свойства

hashCode → int
только для чтенияунаследовано
Хеш-код этого объекта.
on → Events
только для чтенияунаследовано
Это удобный метод доступа к потокам событий, который следует использовать только в том случае, если явный метод доступа недоступен.
onAbort → Stream<ProgressEvent>
только для чтенияунаследовано
Поток событий abort, обрабатываемых этим объектом HttpRequestEventTarget.
onError → Stream<ProgressEvent>
только для чтенияунаследовано
Поток событий error, обрабатываемых этим объектом HttpRequestEventTarget.
onLoad → Stream<ProgressEvent>
только для чтенияунаследовано
Поток событий load, обрабатываемых этим объектом HttpRequestEventTarget.
onLoadEnd → Stream<ProgressEvent>
только для чтенияунаследовано
Поток событий loadend, обрабатываемых этим объектом HttpRequestEventTarget.
onLoadStart → Stream<ProgressEvent>
только для чтенияунаследовано
Поток событий loadstart, обрабатываемых этим объектом HttpRequestEventTarget.
onProgress → Stream<ProgressEvent>
только для чтенияунаследовано
Поток событий progress, обрабатываемых этим объектом HttpRequestEventTarget.
onReadyStateChange → Stream<Event>
только для чтения
Слушатели событий, которым отправляется уведомление каждый раз, когда значение readyState объекта HttpRequest изменяется.
onTimeout → Stream<ProgressEvent>
только для чтенияунаследовано
Поток событий timeout, обрабатываемых этим объектом HttpRequestEventTarget.
readyState → int
только для чтения
Индикатор текущего состояния запроса:
response → dynamic
только для чтения
Данные, полученные в ответ на запрос.
responseHeaders → Map<String, String>
только для чтения
Возвращает все заголовки ответа в виде карты ключ-значение.
responseText → String?
только для чтения
Ответ в виде строки или пустая строка в случае сбоя.
responseType ↔ String
чтение / запись
String, указывающая серверу желаемый формат ответа.
responseUrl → String?
только для чтения
responseXml → Document?
только для чтения
Ответ на запрос или null в случае сбоя.
runtimeType → Type
только для чтенияунаследовано
Представление типа объекта во время выполнения.
status → int?
только для чтения
Код результата HTTP-запроса (200, 404 и т. д.). См. также: Коды состояния HTTP
statusText → String?
только для чтения
Строка ответа на запрос (например, "OK"). См. также: Коды состояния HTTP
timeout ↔ int?
чтение / запись
Время в миллисекундах, по истечении которого запрос автоматически прекращается.
upload → HttpRequestUpload
только для чтения
EventTarget, к которому можно добавить слушатели для отслеживания хода выполнения запроса.
withCredentials ↔ bool?
чтение / запись
Значение true, если при межсайтовых запросах следует использовать учётные данные, например файлы cookie или заголовки авторизации; в противном случае — false.

Методы

abort() → void
Останавливает текущий запрос.
addEventListener(String type, EventListener? listener, [bool? useCapture]) → void
унаследовано
dispatchEvent(Event event) → bool
унаследовано
getAllResponseHeaders() → String
Возвращает все заголовки ответа на запрос.
getResponseHeader(String name) → String?
Возвращает заголовок ответа с именем header или null, если он не найден.
noSuchMethod(Invocation invocation) → dynamic
унаследовано
Вызывается при обращении к несуществующему методу или свойству.
open(String method, String url, {bool? async, String? user, String? password}) → void
Задаёт требуемые url и method для выполнения запроса.
overrideMimeType(String mime) → void
Задаёт конкретный тип MIME (например, text/xml), требуемый для ответа.
removeEventListener(String type, EventListener? listener, [bool? useCapture]) → void
унаследовано
send([dynamic body_OR_data]) → void
Отправляет запрос с указанными data.
setRequestHeader(String name, String value) → void
Задаёт значение заголовка HTTP-запроса.
toString() → String
унаследовано
Строковое представление этого объекта.

Операторы

operator ==(Object other) → bool
унаследовано
Оператор равенства.

Статические свойства

supportsCrossOrigin → bool
только для чтения
Проверяет, поддерживает ли текущая платформа выполнение междоменных запросов.
supportsLoadEndEvent → bool
только для чтения
Проверяет, поддерживается ли событие LoadEnd на текущей платформе.
supportsOverrideMimeType → bool
только для чтения
Проверяет, поддерживается ли метод overrideMimeType на текущей платформе.
supportsProgressEvent → bool
только для чтения
Проверяет, поддерживается ли событие Progress на текущей платформе.

Статические методы

getString(String url, {bool? withCredentials, void onProgress(ProgressEvent e)?}) → Future<String>
Создаёт GET-запрос для указанного url.
postFormData(String url, Map<String, String> data, {bool? withCredentials, String? responseType, Map<String, String>? requestHeaders, void onProgress(ProgressEvent e)?}) → Future<HttpRequest>
Выполняет POST-запрос к серверу с указанными данными, закодированными как данные формы.
request(String url, {String? method, bool? withCredentials, String? responseType, String? mimeType, Map<String, String>? requestHeaders, dynamic sendData, void onProgress(ProgressEvent e)?}) → Future<HttpRequest>
Создаёт и отправляет запрос по URL для указанного url.
requestCrossOrigin(String url, {String? method, String? sendData}) → Future<String>
Выполняет межсайтовый запрос к указанному URL.

Константы

DONE → const int
4
HEADERS_RECEIVED → const int
2
LOADING → const int
3
OPENED → const int
1
readyStateChangeEvent → const EventStreamProvider<Event>
Статическая фабрика, предназначенная для предоставления событий readystatechange обработчикам событий, которые не обязательно являются экземплярами HttpRequest.
const EventStreamProvider<Event>('readystatechange')
UNSENT → const int
0

© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.19.6/dart-html/HttpRequest-class.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API