Класс Request
Реализует методы для HTTP-запросов.
Используется Cake\Http\Client для хранения информации о запросе для выполнения запросов.
Константы
-
stringMETHOD_DELETE'DELETE'
Метод HTTP DELETE
-
stringMETHOD_GET'GET'
Метод HTTP GET
-
stringMETHOD_HEAD'HEAD'
Метод HTTP HEAD
-
stringMETHOD_OPTIONS'OPTIONS'
Метод HTTP OPTIONS
-
stringMETHOD_PATCH'PATCH'
Метод HTTP PATCH
-
stringMETHOD_POST'POST'
Метод HTTP POST
-
stringMETHOD_PUT'PUT'
Метод HTTP PUT
-
stringMETHOD_TRACE'TRACE'
Метод HTTP TRACE
-
intSTATUS_ACCEPTED202
Код HTTP 202
-
intSTATUS_CREATED201
Код HTTP 201
-
intSTATUS_FOUND302
Код HTTP 302
-
intSTATUS_MOVED_PERMANENTLY301
Код HTTP 301
-
intSTATUS_NON_AUTHORITATIVE_INFORMATION203
Код HTTP 203
-
intSTATUS_NO_CONTENT204
Код HTTP 204
-
intSTATUS_OK200
Код HTTP 200
-
intSTATUS_SEE_OTHER303
Код HTTP 303
-
intSTATUS_TEMPORARY_REDIRECT307
Код HTTP 307
Резюме свойств
- $_cookies protected
arrayМассив куки в ответе.
- $headerNames protected
arrayСопоставление нормализованного имени заголовка с исходным именем, используемым для регистрации заголовка.
- $headers protected
arrayСписок всех зарегистрированных заголовков в виде ключ => массив значений.
Резюме методов
-
__construct() public
Конструктор
-
addHeaders() protected
Добавить массив заголовков в запрос.
-
cookies() public
Получить все куки
-
getBody() public
Получить тело сообщения.
-
getHeader() public
Получить значение заголовка сообщения по заданному имени, не учитывая регистр.
-
getHeaderLine() public
Получить строку заголовка, разделенную запятыми.
-
getHeaders() public
Получить все заголовки сообщения.
-
getMethod() public
Получить метод HTTP запроса.
-
getProtocolVersion() public
Получить версию HTTP протокола в виде строки.
-
getRequestTarget() public
Получить целевой объект сообщения.
-
getUri() public
Получить объект URI.
-
hasHeader() public
Проверить наличие заголовка по заданному имени, не учитывая регистр.
-
setContent() protected
Установить тело/полезную нагрузку для сообщения.
-
withAddedHeader() public
Возвращает экземпляр с добавленным заголовком со значением.
-
withBody() public
Возвращает экземпляр со заданным телом сообщения.
-
withHeader() public
Возвращает экземпляр с заданным заголовком, заменяя любые существующие значения заголовков с тем же именем, не учитывая регистр.
-
withMethod() public
Возвращает экземпляр с заданным методом HTTP.
-
withProtocolVersion() public
Возвращает экземпляр с заданной версией HTTP протокола.
-
withRequestTarget() public
Создать новый экземпляр с указанным целевым объектом запроса.
-
withUri() public
Возвращает экземпляр с предоставленным URI.
-
withoutHeader() public
Возвращает экземпляр без указанного заголовка.
Подробное описание методов
__construct() public
__construct(string $url = '', string $method = self::METHOD_GET, array $headers = [], array|string|null $data = null)
Конструктор
Предоставляет обратную совместимость по умолчанию для некоторых свойств.
Параметры
-
string$url optional URL запроса
-
string$method optional HTTP-метод, который нужно использовать.
-
array$headers optional HTTP-заголовки, которые нужно установить.
-
array|string|null$data optional Тело запроса, которое нужно использовать.
addHeaders() protected
addHeaders(array $headers): void
Добавляет массив заголовков к запросу.
Параметры
-
array$headers Заголовки для добавления.
Возвращает
voidcookies() public
cookies(): array
Получить все куки
Возвращает
arraygetBody() public
getBody(): StreamInterface
Получает тело сообщения.
Возвращает
StreamInterfacegetHeader() public
getHeader(string $header): string[]
Извлекает значение заголовка сообщения по заданному имени, не учитывая регистр.
Этот метод возвращает массив всех значений заголовка с заданным именем заголовка, не учитывая регистр.
Если заголовок не появляется в сообщении, этот метод ДОЛЖЕН вернуть пустой массив.
Параметры
-
string$header Имя поля заголовка, не учитывая регистр.
Возвращает
string[]getHeaderLine() public
getHeaderLine(string $name): string
Возвращает строку заголовков, разделённых запятыми, для одного заголовка.
Этот метод возвращает все значения заголовка с заданным именем заголовка, не учитывая регистр, как строку, склеенные вместе с помощью запятой.
ПРИМЕЧАНИЕ: не все значения заголовка могут быть адекватно представлены с помощью конкатенации запятыми. Для таких заголовков используйте getHeader() вместо этого и укажите свой разделитель при конкатенации.
Если заголовок не появляется в сообщении, этот метод ДОЛЖЕН вернуть пустую строку.
Параметры
-
string$name Имя поля заголовка, не учитывая регистр.
Возвращает
stringgetHeaders() public
getHeaders(): array
Получает все заголовки сообщения.
Ключи представляют имя заголовка, как оно будет отправлено по сети, а каждое значение — массив строк, связанных с заголовком.
// Представить заголовки в виде строки foreach ($message->getHeaders() as $name => $values) { echo $name . ": " . implode(", ", $values); }
// Выводить заголовки итеративно: foreach ($message->getHeaders() as $name => $values) { foreach ($values as $value) { header(sprintf('%s: %s', $name, $value), false); } }
Возвращает
arraygetMethod() public
getMethod(): string
Возвращает HTTP-метод запроса.
Возвращает
stringgetProtocolVersion() public
getProtocolVersion(): string
Возвращает HTTP-версию протокола в виде строки.
Строка ДОЛЖНА содержать только номер HTTP-версии (например, "1.1", "1.0").
Возвращает
stringgetRequestTarget() public
getRequestTarget(): string
Возвращает целевой объект запроса сообщения.
Возвращает целевой объект запроса сообщения, как он будет выглядеть (для клиентов), как он выглядел при запросе (для серверов) или как он был указан для экземпляра (см. withRequestTarget()).
В большинстве случаев это будет первоначальная форма URI, если не было предоставлено значение конкретной реализации (см. withRequestTarget() ниже).
Если URI недоступен и целевой объект запроса не был специально предоставлен, этот метод ДОЛЖЕН вернуть строку "/".
Возвращает
stringgetUri() public
getUri(): UriInterface
Возвращает экземпляр URI.
Этот метод ДОЛЖЕН вернуть экземпляр UriInterface.
Возвращает
UriInterfaceСсылки
hasHeader() public
hasHeader(string $header): bool
Проверяет существование заголовка по заданному имени, не учитывая регистр.
Параметры
-
string$header Имя заголовка, не учитывая регистр.
Возвращает
boolsetContent() protected
setContent(string|array $content): $this
Устанавливает тело/полезную нагрузку для сообщения.
Данные массива будут сериализованы с помощью Cake\Http\FormData, и будет установлен тип содержимого.
Параметры
-
string|array$content Тело запроса.
Возвращает
$thiswithAddedHeader() public
withAddedHeader(string $name, string|string[] $value): static
Возвращает экземпляр с указанным заголовком, добавленным со значением.
Существующие значения для указанного заголовка будут сохранены. Новое значение(я) будут добавлены к существующему списку. Если заголовок ранее не существовал, он будет добавлен.
Этот метод ДОЛЖЕН быть реализован таким образом, чтобы сохранить неизменность сообщения, и ДОЛЖЕН вернуть экземпляр, содержащий новый заголовок и/или значение.
Параметры
-
string$name Имя поля заголовка, добавляемого без учёта регистра.
-
string|string[]$value Значение(я) заголовка.
Возвращает
staticИсключения
Exception\InvalidArgumentExceptionПри неверных именах или значениях заголовка.
withBody() public
withBody(StreamInterface $body): static
Возвращает экземпляр с указанным телом сообщения.
Тело ДОЛЖНО быть объектом StreamInterface.
Этот метод ДОЛЖЕН быть реализован таким образом, чтобы сохранить неизменность сообщения, и ДОЛЖЕН вернуть новый экземпляр, имеющий новый поток тела.
Параметры
-
StreamInterface$body Тело.
Возвращает
staticИсключения
Exception\InvalidArgumentExceptionПри некорректном теле.
withHeader() public
withHeader(string $name, string|string[] $value): static
Возвращает экземпляр с предоставленным заголовком, заменяющим все существующие значения любых заголовков с тем же именем, не учитывая регистр.
Хотя имена заголовков нечувствительны к регистру, регистр заголовка будет сохранён этой функцией и возвращён из getHeaders().
Этот метод ДОЛЖЕН быть реализован таким образом, чтобы сохранить неизменность сообщения, и ДОЛЖЕН вернуть экземпляр, содержащий новый и/или обновлённый заголовок и значение.
Параметры
-
string$name Имя поля заголовка, не учитывая регистр.
-
string|string[]$value Значение заголовка.
Возвращает
staticИсключения
Exception\InvalidArgumentExceptionПри неверных именах или значениях заголовка.
withMethod() public
withMethod(string $method): static
Возвращает экземпляр с предоставленным HTTP-методом.
Хотя имена HTTP-методов обычно являются заглавными буквами, имена HTTP-методов чувствительны к регистру, и поэтому реализации НЕ должны изменять предоставленную строку.
Этот метод ДОЛЖЕН быть реализован таким образом, чтобы сохранить неизменность сообщения, и ДОЛЖЕН вернуть экземпляр, имеющий изменённый метод запроса.
Параметры
-
string$method Метод без учёта регистра.
Возвращает
staticИсключения
Exception\InvalidArgumentExceptionПри некорректных HTTP-методах.
withProtocolVersion() public
withProtocolVersion(string $version): static
Возвращает экземпляр с указанной версией протокола HTTP.
Строка версии ДОЛЖНА содержать только номер версии HTTP (например, "1.1", "1.0").
Этот метод ДОЛЖЕН быть реализован таким образом, чтобы сохранить неизменяемость сообщения и ДОЛЖЕН вернуть экземпляр с новой версией протокола.
Параметры
-
string$version Версия протокола HTTP
Возвращает
staticwithRequestTarget() public
withRequestTarget(mixed $requestTarget): static
Создаёт новый экземпляр с конкретной целью запроса.
Если запросу нужна цель запроса отличная от формы происхождения — например, для указания абсолютной, авторизационной или звёздочной формы — этот метод можно использовать для создания экземпляра со указанной целью запроса в точности.
Этот метод ДОЛЖЕН быть реализован таким образом, чтобы сохранить неизменяемость сообщения, и ДОЛЖЕН вернуть новый экземпляр с изменённой целью запроса.
Параметры
-
mixed$requestTarget
Возвращает
staticИсключения
Exception\InvalidArgumentExceptionЕсли цель запроса некорректна.
Ссылки
withUri() public
withUri(UriInterface $uri, bool $preserveHost = false): static
Возвращает экземпляр с предоставленным URI.
Этот метод по умолчанию обновит заголовок Host возвращаемого запроса, если URI содержит компонент хоста. Если URI не содержит компонент хоста, любой существующий заголовок Host будет перенесён в возвращаемый запрос.
Вы можете выбрать сохранение исходного состояния заголовка Host, установив $preserveHost в true. Когда $preserveHost установлено в true, возвращаемый запрос не будет обновлять заголовок Host возвращаемого сообщения — даже если сообщение не содержит заголовок Host. Это означает, что вызов getHeader('Host') для исходного запроса ДОЛЖЕН быть равен результату вызова getHeader('Host') для возвращаемого запроса.
Этот метод ДОЛЖЕН быть реализован таким образом, чтобы сохранить неизменяемость сообщения, и ДОЛЖЕН вернуть экземпляр с новой реализацией UriInterface.
Параметры
-
UriInterface$uri Новый URI запроса для использования.
-
bool$preserveHost optional Сохранить исходное состояние заголовка Host.
Возвращает
staticСсылки
withoutHeader() public
withoutHeader(string $name): static
Возвращает экземпляр без указанного заголовка.
Решение заголовков ДОЛЖНО выполняться без учёта регистра.
Этот метод ДОЛЖЕН быть реализован таким образом, чтобы сохранить неизменяемость сообщения, и ДОЛЖЕН вернуть экземпляр, удаляющий указанный заголовок.
Параметры
-
string$name Имя поля заголовка (без учёта регистра) для удаления.
Возвращает
staticПодробное описание свойств
$_cookies protected
Массив куки в ответе.
Тип
array$headerNames protected
Карта нормализованного имени заголовка к исходному имени, используемому для регистрации заголовка.
Тип
array$headers protected
Список всех зарегистрированных заголовков в виде ключ => массив значений.
Тип
array
© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.2/class-Cake.Http.Client.Request.html