модуль http
Модуль протокола передачи гипертекста, используемый для поддержки обработки протокола http, псевдоним модуля: https
объект
Request
Создайте объект http-запроса, см.HttpRequest
1HttpRequest http.Request;
Response
Создайте объект ответа http, см.HttpResponse
1HttpResponse http.Response;
Cookie
Создайте объект cookie http, см.HttpCookie
1HttpCookie http.Cookie;
Server
Создайте http-сервер, см.HttpServer
1HttpServer http.Server;
Client
Создайте http-клиент, см.HttpClient
1HttpClient http.Client;
HttpsServer
Создайте сервер https, см.HttpsServer
1HttpsServer http.HttpsServer;
Handler
Создайте объект обработчика протокола http, см.HttpHandler
1HttpHandler http.Handler;
Repeater
Создайте объект обработчика пересылки HTTP-запросов, см.HttpRepeater
1HttpRepeater http.Repeater;
статическая функция
fileHandler
Создайте обработчик статических файлов http, чтобы отвечать на сообщения http статическими файлами.
1
2
3static Handler http.fileHandler(String root,
Object mimes = {},
Boolean autoIndex = false);
Параметры вызова:
- root: Строка, путь к корневому файлу
- mimes: Объект, расширенные настройки mime
- autoIndex: логическое значение, поддерживает ли просмотр файлов каталогов, по умолчанию — false, не поддерживается.
возвращаемый результат:
- Handler, возвращает обработчик статических файлов для обработки http-сообщений
fileHandler поддерживает предварительное сжатие gzip. Когда запрос принимает кодировку gzip и файл filename.ext.gz существует по тому же пути, он напрямую возвращает этот файл, что позволяет избежать повторного сжатия, чтобы увеличить нагрузку на сервер.
setClientCert
Установить сертификат клиента по умолчанию
1
2static http.setClientCert(X509Cert crt,
PKey key);
Параметры вызова:
- crt:X509Cert, сертификат, используемый для отправки на сервер для аутентификации клиента
- key:PKey, закрытый ключ, используемый для связи с клиентом
request
Отправить HTTP-запрос к указанному объекту потока и вернуть результат
1
2static HttpResponse http.request(Stream conn,
HttpRequest req) async;
Параметры вызова:
- conn:Stream, указывает объект потока, который обрабатывает запрос
- req:HttpRequest, отправлятьHttpRequestобъект
возвращаемый результат:
- HttpResponse, возвращает ответ сервера
Отправить HTTP-запрос к указанному объекту потока и вернуть результат
1
2
3static HttpResponse http.request(Stream conn,
HttpRequest req,
SeekableStream response_body) async;
Параметры вызова:
- conn:Stream, указывает объект потока, который обрабатывает запрос
- req:HttpRequest, отправлятьHttpRequestобъект
- response_body:SeekableStream, указывает поток response.body
возвращаемый результат:
- HttpResponse, возвращает ответ сервера
просят указатьurl, и вернуть результат
1
2
3static HttpResponse http.request(String method,
String url,
Object opts = {}) async;
Параметры вызова:
- method: Строка, указывает метод http-запроса: GET, POST и т. д.
- url: Строка, указаннаяurl, который должен быть полнымurl
- opts: Объект, указывает дополнительную информацию
возвращаемый результат:
- HttpResponse, возвращает ответ сервера
opts содержит дополнительные параметры запроса, поддерживаемый контент выглядит следующим образом:
1
2
3
4
5
6
7
8
9{
"method": "GET", //指定 http 请求方法:GET, POST 等
"query": {},
"body": SeekableStream | Buffer | String | {},
"json": {},
"pack": {},
"headers": {},
"response_body": SeekableStream //指定接受 resposne 数据的流
}
где тело,json, пакет не должен появляться одновременно. По умолчанию {}, не содержит никакой дополнительной информации.
get
Используйте метод GET для запроса указанногоurl, и вернуть результат, эквивалентный request("GET",...)
1
2static HttpResponse http.get(String url,
Object opts = {}) async;
Параметры вызова:
- url: Строка, указаннаяurl, который должен быть полнымurl
- opts: Объект, указывает дополнительную информацию
возвращаемый результат:
- HttpResponse, возвращает ответ сервера
opts содержит дополнительные параметры запроса, поддерживаемый контент выглядит следующим образом:
1
2
3
4
5
6
7
8{
"method": "GET", //指定 http 请求方法:GET, POST 等
"query": {},
"body": SeekableStream | Buffer | String | {},
"json": {},
"pack": {},
"headers": {}
}
где тело,json, пакет не должен появляться одновременно. По умолчанию {}, не содержит никакой дополнительной информации.
post
Используйте метод POST для запроса указанногоurl, и вернуть результат, эквивалентный request("POST",...)
1
2static HttpResponse http.post(String url,
Object opts = {}) async;
Параметры вызова:
- url: Строка, указаннаяurl, который должен быть полнымurl
- opts: Объект, указывает дополнительную информацию
возвращаемый результат:
- HttpResponse, возвращает ответ сервера
opts содержит дополнительные параметры запроса, поддерживаемый контент выглядит следующим образом:
1
2
3
4
5
6
7
8{
"method": "GET", //指定 http 请求方法:GET, POST 等
"query": {},
"body": SeekableStream | Buffer | String | {},
"json": {},
"pack": {},
"headers": {}
}
где тело,json, пакет не должен появляться одновременно. По умолчанию {}, не содержит никакой дополнительной информации.
del
Используйте метод DELETE для запроса указанногоurl, и вернуть результат, эквивалентный request("DELETE",...)
1
2static HttpResponse http.del(String url,
Object opts = {}) async;
Параметры вызова:
- url: Строка, указаннаяurl, который должен быть полнымurl
- opts: Объект, указывает дополнительную информацию
возвращаемый результат:
- HttpResponse, возвращает ответ сервера
opts содержит дополнительные параметры запроса, поддерживаемый контент выглядит следующим образом:
1
2
3
4
5
6
7
8{
"method": "GET", //指定 http 请求方法:GET, POST 等
"query": {},
"body": SeekableStream | Buffer | String | {},
"json": {},
"pack": {},
"headers": {}
}
где тело,json, пакет не должен появляться одновременно. По умолчанию {}, не содержит никакой дополнительной информации.
put
Используйте метод PUT для запроса указанногоurl, и вернуть результат, эквивалентный request("PUT",...)
1
2static HttpResponse http.put(String url,
Object opts = {}) async;
Параметры вызова:
- url: Строка, указаннаяurl, который должен быть полнымurl
- opts: Объект, указывает дополнительную информацию
возвращаемый результат:
- HttpResponse, возвращает ответ сервера
opts содержит дополнительные параметры запроса, поддерживаемый контент выглядит следующим образом:
1
2
3
4
5
6
7
8{
"method": "GET", //指定 http 请求方法:GET, POST 等
"query": {},
"body": SeekableStream | Buffer | String | {},
"json": {},
"pack": {},
"headers": {}
}
где тело,json, пакет не должен появляться одновременно. По умолчанию {}, не содержит никакой дополнительной информации.
patch
Используйте метод PATCH для запроса указанногоurl, и вернуть результат, эквивалентный request("PATCH", ...)
1
2static HttpResponse http.patch(String url,
Object opts = {}) async;
Параметры вызова:
- url: Строка, указаннаяurl, который должен быть полнымurl
- opts: Объект, указывает дополнительную информацию
возвращаемый результат:
- HttpResponse, возвращает ответ сервера
opts содержит дополнительные параметры запроса, поддерживаемый контент выглядит следующим образом:
1
2
3
4
5
6
7
8{
"method": "GET", //指定 http 请求方法:GET, POST 等
"query": {},
"body": SeekableStream | Buffer | String | {},
"json": {},
"pack": {},
"headers": {}
}
где тело,json, пакет не должен появляться одновременно. По умолчанию {}, не содержит никакой дополнительной информации.
head
Используйте метод HEAD для запроса указанногоurl, и вернуть результат, эквивалентный request("HEAD", ...)
1
2static HttpResponse http.head(String url,
Object opts = {}) async;
Параметры вызова:
- url: Строка, указаннаяurl, который должен быть полнымurl
- opts: Объект, указывает дополнительную информацию
возвращаемый результат:
- HttpResponse, возвращает ответ сервера
opts содержит дополнительные параметры запроса, поддерживаемый контент выглядит следующим образом:
1
2
3
4
5
6
7
8{
"method": "GET", //指定 http 请求方法:GET, POST 等
"query": {},
"body": SeekableStream | Buffer | String | {},
"json": {},
"pack": {},
"headers": {}
}
где тело,json, пакет не должен появляться одновременно. По умолчанию {}, не содержит никакой дополнительной информации.
статическое свойство
STATUS_CODES
Массив, возвращает набор стандартных кодов состояния ответа HTTP и краткое описание каждого из них.
1static readonly Array http.STATUS_CODES;
cookies
NArray, возвращает http-клиентHttpCookieсписок объектов
1static readonly NArray http.cookies;
timeout
Целое число, запрос и установка времени ожидания
1static Integer http.timeout;
enableCookie
Булево значение, переключение функции cookie, включено по умолчанию
1static Boolean http.enableCookie;
autoRedirect
Логическое значение, автоматическое переключение функции перенаправления, включено по умолчанию
1static Boolean http.autoRedirect;
enableEncoding
Булево значение, автоматическое переключение функции декомпрессии, включено по умолчанию
1static Boolean http.enableEncoding;
maxBodySize
Целое число, запрос и установка максимального размера тела в МБ, по умолчанию -1, без ограничений по размеру
1static Integer http.maxBodySize;
userAgent
Строка, запрос и установка идентификатора браузера в http-запросе
1static String http.userAgent;
poolSize
Целое, запросите и установите максимальное количество подключений к кешу для проверки активности, по умолчанию 128.
1static Integer http.poolSize;
poolTimeout
Целое число, запрос и установка тайм-аута подключения к кэшу поддержки активности, по умолчанию 10000 мс.
1static Integer http.poolTimeout;
proxyAgent
Строка, запрос и установка прокси-сервера, поддержка прокси-сервера http/https/socks5
1static String http.proxyAgent;