Встроенный объект объекта

ОбъектHttpRequest

HttpRequest — класс, используемый для обработки HTTP-запросов. Он позволяет создавать HTTP-запросы и взаимодействовать с сервером. Вы можете использовать его для отправки GET, POST и других типов HTTP-запросов на веб-сервер.

Предположим, у нас есть параметр запроса с именем ключа, и мы возвращаем разные результаты обработки на основе этого параметра: если параметр пуст, возвращаем «Hello world!», если параметр «fibjs», возвращаем «Hello fibjs!»; в противном случае верните «Привет, кто-то!».

Код реализован следующим образом:

1 2 3 4 5 6 7 8 9 10
const http = require('http'); var svr = new http.Server(8080, (req) => { var name = req.query.get('name'); var msg = name ? `Hello ${name}!` : 'Hello world!'; req.response.write(msg); }); svr.start();

Здесь мы используем req.queryэтот тип коллекции, который представляет параметры запроса в URL-адресе HTTP-запроса.

Обращаемся по http://127.0.0.1:8080/?name=fibjs через браузер к сервисной программе и получаем содержимое ответа сервера Hello fibjs!.

отношения наследства

Конструктор

HttpRequest

Конструктор HttpRequest создает новый объект HttpRequest.

1
new HttpRequest();

постоянный

TEXT

Укажите тип сообщения 1, который представляет тип текста.

1
const HttpRequest.TEXT = 1;

BINARY

Укажите тип сообщения 2, представляющий двоичный тип.

1
const HttpRequest.BINARY = 2;

свойства члена

response

HttpResponse, Получить объект ответного сообщения

1
readonly HttpResponse HttpRequest.response;

method

Строка, запрос и методы запроса установки

1
String HttpRequest.method;

address

Строка, запрос и адрес запроса установки

1
String HttpRequest.address;

queryString

Строка, запрос и строка запроса установки запроса

1
String HttpRequest.queryString;

cookies

HttpCollection, получите контейнер, содержащий файлы cookie сообщений

1
readonly HttpCollection HttpRequest.cookies;

form

HttpCollection, получите контейнер, содержащий форму сообщения

1
readonly HttpCollection HttpRequest.form;

query

HttpCollection, получите контейнер, содержащий запрос сообщения

1
readonly HttpCollection HttpRequest.query;

protocol

Строка, информация о версии протокола, разрешенный формат: HTTP/#.#.

1
String HttpRequest.protocol;

headers

HttpCollection, включенный в сообщениеhttpКонтейнер для заголовков сообщений, свойство только для чтения.

1
readonly HttpCollection HttpRequest.headers;

keepAlive

Логическое значение, запрос и установка, поддерживать ли соединение

1
Boolean HttpRequest.keepAlive;

upgrade

Логическое значение, запрос и установка, является ли это протоколом обновления.

1
Boolean HttpRequest.upgrade;

maxHeadersCount

Целое число, запросите и установите максимальное количество заголовков запроса, значение по умолчанию — 128.

1
Integer HttpRequest.maxHeadersCount;

maxHeaderSize

Целое число, запросите и установите максимальную длину заголовка запроса, значение по умолчанию — 8192.

1
Integer HttpRequest.maxHeaderSize;

maxBodySize

Целое число, запрос и установка максимального размера тела в МБ, значение по умолчанию — 64.

1
Integer HttpRequest.maxBodySize;

socket

Stream, Запросить исходный сокет текущего объекта

1
readonly Stream HttpRequest.socket;

value

Строка, основное содержание сообщения.

1
String HttpRequest.value;

params

NArray, основные параметры сообщения

1
readonly NArray HttpRequest.params;

type

Целое число, тип сообщения

1
Integer HttpRequest.type;

data

Значение, запрос данных сообщения. Этот атрибут будет возвращать разные данные в зависимости от типа контента. Если это текст, будет возвращен текст.jsonвернуться, когдаjson, в противном случае возвращается двоичный файл

1
readonly Value HttpRequest.data;

body

SeekableStream, объект потока, содержащий часть данных сообщения

1
SeekableStream HttpRequest.body;

length

Long, длина части данных сообщения.

1
readonly Long HttpRequest.length;

stream

Stream, объект потока при запросе сообщения readFrom

1
readonly Stream HttpRequest.stream;

lastError

Строка, запрос и установка последней ошибки обработки сообщения

1
String HttpRequest.lastError;

функция-член

hasHeader

Проверьте, существует ли заголовок сообщения с указанным значением ключа.

1
Boolean HttpRequest.hasHeader(String name);

Параметры звонка:

  • name: строка, указывает значение ключа, которое необходимо проверить.

Результаты возврата:

  • Boolean, возвращает, существует ли значение ключа

firstHeader

Запросить заголовок первого сообщения указанного значения ключа

1
String HttpRequest.firstHeader(String name);

Параметры звонка:

  • name: строка, укажите значение ключа, которое будет запрошено.

Результаты возврата:

  • String, возвращает значение, соответствующее значению ключа, если оно не существует, возвращает неопределенное значение

allHeader

Запросить все заголовки сообщений указанного значения ключа

1
NObject HttpRequest.allHeader(String name = "");

Параметры звонка:

  • name: строка, укажите значение ключа для запроса, передайте пустую строку, чтобы вернуть результаты всех значений ключа.

Результаты возврата:

  • NObject, возвращает массив всех значений, соответствующих значению ключа. Если данные не существуют, возвращает ноль.

addHeader

Добавьте заголовок сообщения, добавьте данные и не изменяйте заголовок сообщения существующего значения ключа.

1
HttpRequest.addHeader(Object map);

Параметры звонка:

  • map: Объект, указывает добавляемый словарь данных «ключ-значение».

Добавляет набор заголовков с указанным именем. Добавление данных не изменяет заголовки существующих значений ключей.

1 2
HttpRequest.addHeader(String name, Array values);

Параметры звонка:

  • name: строка, указывает добавляемое значение ключа.
  • values: Массив, определяет набор добавляемых данных.

Добавьте заголовок сообщения, добавьте данные и не изменяйте заголовок сообщения существующего значения ключа.

1 2
HttpRequest.addHeader(String name, String value);

Параметры звонка:

  • name: строка, указывает добавляемое значение ключа.
  • value: Строка, укажите данные, которые необходимо добавить.

setHeader

Установите заголовок сообщения. Установка данных приведет к изменению первого значения, соответствующего значению ключа, и очистке остальных заголовков сообщений с тем же значением ключа.

1
HttpRequest.setHeader(Object map);

Параметры звонка:

  • map: Объект, указывает словарь данных «ключ-значение», который будет установлен.

Задайте набор заголовков сообщений с указанным именем. Установка данных приведет к изменению значения, соответствующего значению ключа, и очистке остальных заголовков сообщений с тем же значением ключа.

1 2
HttpRequest.setHeader(String name, Array values);

Параметры звонка:

  • name: Строка, укажите значение ключа, которое будет установлено.
  • values: Массив, определяет набор данных для установки.

Установите заголовок сообщения. Установка данных приведет к изменению первого значения, соответствующего значению ключа, и очистке остальных заголовков сообщений с тем же значением ключа.

1 2
HttpRequest.setHeader(String name, String value);

Параметры звонка:

  • name: Строка, укажите значение ключа, которое будет установлено.
  • value: Строка, укажите данные для установки.

removeHeader

Удалить все заголовки сообщений с указанным значением ключа

1
HttpRequest.removeHeader(String name);

Параметры звонка:

  • name: строка, указывает значение ключа, которое необходимо удалить.

read

Чтение данных указанного размера из потока.Этот метод является псевдонимом соответствующего метода тела.

1
Buffer HttpRequest.read(Integer bytes = -1) async;

Параметры звонка:

  • bytes: целое число, указывает объем считываемых данных.По умолчанию считываются блоки данных случайного размера.Размер считываемых данных зависит от устройства.

Результаты возврата:

  • Buffer, возвращает данные, считанные из потока. Если данных для чтения нет или соединение прервано, возвращается значение null.

readAll

Считайте все оставшиеся данные из потока.Этот метод является псевдонимом соответствующего метода тела.

1
Buffer HttpRequest.readAll() async;

Результаты возврата:

  • Buffer, возвращает данные, считанные из потока. Если данных для чтения нет или соединение прервано, возвращается значение null.

write

Запишите данные.Этот метод является псевдонимом соответствующего метода в теле.

1
HttpRequest.write(Buffer data) async;

Параметры звонка:

  • data:Buffer, учитывая данные, которые нужно записать

json

Записывает данные в кодировке JSON.

1
Value HttpRequest.json(Value data);

Параметры звонка:

  • data: Значение, учитывая данные для записи.

Результаты возврата:

  • Value, этот метод не возвращает данные

Разобрать данные в сообщении как кодировку JSON.

1
Value HttpRequest.json();

Результаты возврата:

  • Value, возвращает результат анализа

pack

кmsgpackКодирование записывает данные данные

1
Value HttpRequest.pack(Value data);

Параметры звонка:

  • data: Значение, учитывая данные для записи.

Результаты возврата:

  • Value, этот метод не возвращает данные

кmsgpackКодирование и анализ данных в сообщении

1
Value HttpRequest.pack();

Результаты возврата:

  • Value, возвращает результат анализа

end

Установить окончание обработки текущего сообщения,ChainПроцессор не продолжает выполнение последующих транзакций

1
HttpRequest.end();

isEnded

Запросить, закончилось ли текущее сообщение

1
Boolean HttpRequest.isEnded();

Результаты возврата:

  • Boolean, возвращает true по завершении

clear

Очистить содержимое сообщения

1
HttpRequest.clear();

sendTo

Отправляет форматированное сообщение данному объекту потока.

1
HttpRequest.sendTo(Stream stm) async;

Параметры звонка:

  • stm:Stream, указывает объект потока, который получает форматированное сообщение

readFrom

Считывает отформатированное сообщение из заданного объекта потока кэша и анализирует заполненный объект.

1
HttpRequest.readFrom(Stream stm) async;

Параметры звонка:

  • stm:Stream, указывает объект потока для чтения форматированных сообщений

toString

Возвращает строковое представление объекта. Обычно возвращается «[Native Object]». Объект может быть повторно реализован в соответствии с его собственными характеристиками.

1
String HttpRequest.toString();

Результаты возврата:

  • String, возвращает строковое представление объекта

toJSON

Возвращает представление объекта в формате JSON, обычно возвращая коллекцию читаемых свойств, определенных объектом.

1
Value HttpRequest.toJSON(String key = "");

Параметры звонка:

  • key: Строка, не используется.

Результаты возврата:

  • Value, возвращает значение, содержащее сериализуемый JSON