Spec-Zone.ru › CakePHP 4.2

Класс ServerRequestFactory

Фабрика для создания экземпляров ServerRequest.

Этот подкласс добавляет специфичное для CakePHP поведение для заполнения атрибутов basePath и webroot. Кроме того, путь Uri корректируется, чтобы содержать только «виртуальный» путь для запроса.

Абстрактный
Пространство имён: Cake\Http

Краткое описание методов

  • createServerRequest() public

    Создать новый запрос сервера.

  • createUri() public static

    Создать новый экземпляр Uri из предоставленных данных сервера.

  • fromGlobals() public static

    Создать запрос из предоставленных глобальных значений.

  • getBase() protected static

    Вычислить базовый каталог и каталог webroot.

  • marshalBodyAndRequestMethod() protected static

    Устанавливает переменную окружения REQUEST_METHOD на основе значения имитируемого переопределения HTTP _method. Также сохраняется 'ORIGINAL_REQUEST_METHOD', если необходимо получить исходный HTTP-метод, использованный клиентом.

  • marshalFiles() protected static

    Обработать загруженные файлы и поместить их в обработанное тело.

  • marshalUriFromSapi() protected static

    Построить объект UriInterface.

  • updatePath() protected static

    Обновляет URI запроса, удаляя базовый каталог.

Подробное описание методов

createServerRequest() public

createServerRequest(string $method, UriInterface|string $uri, array $serverParams = []): Psr\Http\Message\ServerRequestInterface

Создать новый запрос сервера.

Обратите внимание, что параметры сервера принимаются точно так, как они заданы — никакого анализа/обработки предоставленных значений не выполняется, и, в частности, не предпринимается попытка определить HTTP-метод или URI, которые должны быть явно предоставлены.

Параметры

string $method

HTTP-метод, связанный с запросом.

UriInterface|string $uri

URI, связанный с запросом. Если значение является строкой, фабрика ДОЛЖНА создать экземпляр UriInterface на его основе.

array $serverParams optional

Массив параметров SAPI, используемых для инициализации созданного экземпляра запроса.

Возвращает

Psr\Http\Message\ServerRequestInterface

createUri() public static

createUri(array $server = []): Psr\Http\Message\UriInterface

Создать новый экземпляр Uri из предоставленных данных сервера.

Параметры

array $server optional

Массив данных сервера для построения Uri. $_SERVER будет добавлен в параметр $server.

Возвращает

Psr\Http\Message\UriInterface

fromGlobals() public static

fromGlobals(array $server = null, array $query = null, array $parsedBody = null, array $cookies = null, array $files = null): Cake\Http\ServerRequest

Создать запрос из предоставленных глобальных значений.

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

Созданный ServerRequest затем передаётся в метод fromServer() для обработки URI и заголовков запроса.

Параметры

array $server optional

$_SERVER superglobal

array $query optional

$_GET superglobal

array $parsedBody optional

$_POST superglobal

array $cookies optional

$_COOKIE superglobal

array $files optional

$_FILES superglobal

Возвращает

Cake\Http\ServerRequest

Исключения

InvalidArgumentException
для неверных значений файла

См. также

fromServer()

getBase() protected static

getBase(Psr\Http\Message\UriInterface $uri, array $server): array

Вычислить базовый каталог и каталог webroot.

Параметры

Psr\Http\Message\UriInterface $uri

Экземпляр Uri.

array $server

Данные SERVER для использования.

Возвращает

array

marshalBodyAndRequestMethod() protected static

marshalBodyAndRequestMethod(array $parsedBody, Cake\Http\ServerRequest $request): Cake\Http\ServerRequest

Устанавливает переменную окружения REQUEST_METHOD на основе значения имитируемого переопределения HTTP _method. Также сохраняется 'ORIGINAL_REQUEST_METHOD', если необходимо получить исходный HTTP-метод, использованный клиентом.

Тело запроса типа содержимого "application/x-www-form-urlencoded" анализируется в массив для запросов PUT/PATCH/DELETE.

Параметры

array $parsedBody

Обработанное тело.

Cake\Http\ServerRequest $request

Экземпляр запроса.

Возвращает

Cake\Http\ServerRequest

marshalFiles() protected static

marshalFiles(array $files, Cake\Http\ServerRequest $request): Cake\Http\ServerRequest

Обработать загруженные файлы и поместить их в обработанное тело.

Параметры

array $files

Массив файлов для нормализации и слияния в обработанном теле.

Cake\Http\ServerRequest $request

Экземпляр запроса.

Возвращает

Cake\Http\ServerRequest

marshalUriFromSapi() protected static

marshalUriFromSapi(array $server, array $headers): Psr\Http\Message\UriInterface

Построить объект UriInterface.

Добавить специфичное для CakePHP логику/свойства, которые помогают сохранить обратную совместимость.

Параметры

array $server

Параметры сервера.

array $headers

Нормализованные заголовки.

Возвращает

Psr\Http\Message\UriInterface

updatePath() protected static

updatePath(string $base, Psr\Http\Message\UriInterface $uri): Psr\Http\Message\UriInterface

Обновляет URI запроса, удаляя базовый каталог.

Параметры

string $base

Базовый путь для удаления.

Psr\Http\Message\UriInterface $uri

Uri для обновления.

Возвращает

Psr\Http\Message\UriInterface

© 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.ServerRequestFactory.html

Spec-Zone.ru

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