Spec-Zone.ru › CakePHP 4.3

Класс Response

Ответы содержат текст ответа, статус и заголовки HTTP-ответа.

Существуют внешние пакеты, такие как fig/http-message-util, которые предоставляют константы кодов статуса HTTP. Их можно использовать с любым методом, принимающим или возвращающим целое число статуса. Имейте в виду, что эти константы могут включать коды статусов, которые сейчас запрещены, что вызовет \InvalidArgumentException.

Пространство имён: Cake\Http

Константы

  • int
    STATUS_CODE_MAX
    599
  • int
    STATUS_CODE_MIN
    100

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

  • $_cacheDirectives protected
    array

    Хранит все директивы кэширования, которые будут преобразованы в заголовки при отправке запроса

  • $_charset protected
    string

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

  • $_cookies protected
    Cake\Http\Cookie\CookieCollection

    Коллекция куки для отправки клиенту

  • $_file protected
    SplFileInfo|null

    Объект файла для чтения файла как ответа

  • $_fileRange protected
    array<int>

    Диапазон файла. Используется для запроса диапазонов файлов.

  • $_mimeTypes protected
    array<string, mixed>

    Содержит соответствия ключей типа к типам MIME для известных типов MIME.

  • $_reasonPhrase protected
    string

    Фраза причины

  • $_status protected
    int

    Код состояния для отправки клиенту

  • $_statusCodes protected
    array<int, string>

    Разрешённые HTTP-коды состояния и их стандартное описание.

  • $_streamMode protected
    string

    Параметры режима потока.

  • $_streamTarget protected
    resource|string

    Целевой поток или объект ресурса.

  • $headerNames protected
    array

    Отображение нормализованного имени заголовка на исходное имя, используемое для регистрации заголовка.

  • $headers protected
    array

    Список всех зарегистрированных заголовков в виде ключ => массив значений.

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

  • __construct() public

    Конструктор

  • __debugInfo() public

    Возвращает массив, который можно использовать для описания внутреннего состояния этого объекта.

  • __toString() public

    Преобразование в строку. Извлекает тело ответа в виде строки. Не отправляет заголовки. Если тело — вызываемый объект, возвращается пустая строка.

  • _clearHeader() protected

    Очистить заголовок

  • _createStream() protected

    Создаёт объект потока.

  • _fileRange() protected

    Применяет диапазон файла к файлу и устанавливает конечный смещение.

  • _getUTCDate() protected

    Возвращает объект DateTime, инициализированный в параметре $time и использующий часовой пояс UTC.

  • _setCacheControl() protected

    Вспомогательный метод для генерации допустимого заголовка Cache-Control из опций, установленных в других методах.

  • _setContentType() protected

    Форматирует заголовок Content-Type на основе настроенного contentType и charset. charset будет установлен в заголовок только в том случае, если тип ответа — text/*

  • _setHeader() protected

    Устанавливает заголовок.

  • _setStatus() protected

    Модификатор для статуса ответа.

  • checkNotModified() public

    Проверяет, не был ли ответ изменён в соответствии с заголовками запроса 'If-None-Match' (Etag) и 'If-Modified-Since' (дата последнего изменения). Если ответ не был изменён, он помечается как таковой, чтобы клиент мог об этом узнать.

  • compress() public

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

  • cors() public

    Получает экземпляр CorsBuilder для определения заголовков CORS.

  • getBody() public

    Получает тело сообщения.

  • getCharset() public

    Возвращает текущий кодировку.

  • getCookie() public

    Считывает один куки из ответа.

  • getCookieCollection() public

    Получает CookieCollection из ответа.

  • getCookies() public

    Получает все куки в ответе.

  • getFile() public

    Получает текущий файл, если он существует.

  • getHeader() public

    Извлекает значение заголовка сообщения по заданному имени (регистр игнорируется).

  • getHeaderLine() public

    Возвращает строку значений заголовка, разделённых запятыми.

  • getHeaders() public

    Извлекает все заголовки сообщения.

  • getMimeType() public

    Возвращает определение типа MIME для псевдонима.

  • getProtocolVersion() public

    Возвращает версию протокола HTTP в виде строки.

  • getReasonPhrase() public

    Получает фразу причины ответа, связанную со статусом кода.

  • getStatusCode() public

    Получает код состояния ответа.

  • getType() public

    Возвращает текущий тип содержимого.

  • hasHeader() public

    Проверяет, существует ли заголовок по заданному имени (регистр игнорируется).

  • mapType() public

    Возвращает тип содержимого обратно к псевдониму.

  • notModified() public

    Устанавливает ответ как "Не изменён", удаляя содержимое тела, устанавливая код состояния на "304 Не изменён" и удаляя все конфликтующие заголовки.

  • outputCompressed() public

    Возвращает, будет ли результирующий вывод сжат PHP.

  • resolveType() protected

    Перевод и проверка типов содержимого.

  • setTypeMap() public

    Добавляет определение типа содержимого в карту.

  • validateFile() protected

    Проверка, является ли путь к файлу допустимым телом ответа.

  • withAddedHeader() public

    Возвращает экземпляр с добавленным заголовком и значением.

  • withAddedLink() public

    Создаёт новый ответ с заданным заголовком Link.

  • withBody() public

    Возвращает экземпляр с указанным телом сообщения.

  • withCache() public

    Создаёт новый экземпляр с заголовками для включения кэширования клиентом.

  • withCharset() public

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

  • withCookie() public

    Создаёт новый ответ с установленным куки.

  • withCookieCollection() public

    Создаёт новый экземпляр с заданной коллекцией куки.

  • withDisabledCache() public

    Создаёт новый экземпляр с заголовками, чтобы указать клиенту не кэшировать ответ.

  • withDownload() public

    Создаёт новый экземпляр с установленным заголовком Content-Disposition.

  • withEtag() public

    Создаёт новый экземпляр с установленным заголовком Etag.

  • withExpiredCookie() public

    Создаёт новый ответ с установленным просроченным куки.

  • withExpires() public

    Создаёт новый экземпляр с установленным заголовком Expires.

  • withFile() public

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

  • withHeader() public

    Возвращает экземпляр с указанным заголовком, заменяя любые существующие значения заголовков с тем же именем, не учитывая регистр.

  • withLength() public

    Создать новый ответ с установленным заголовком Content-Length.

  • withLocation() public

    Возвращает экземпляр с обновлённым заголовком расположения.

  • withMaxAge() public

    Создать экземпляр с установленным директивой Cache-Control max-age.

  • withModified() public

    Создать новый экземпляр с установленным заголовком Last-Modified.

  • withMustRevalidate() public

    Создать экземпляр с установленной директивой Cache-Control must-revalidate.

  • withNotModified() public

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

  • withProtocolVersion() public

    Возвращает экземпляр со специфицированной версией HTTP протокола.

  • withSharable() public

    Создать новый экземпляр с установленной директивой Cache-Control public/private.

  • withSharedMaxAge() public

    Создать новый экземпляр с установленной директивой Cache-Control s-maxage.

  • withStatus() public

    Возвращает экземпляр с указанным кодом состояния и, необязательно, фразой причины.

  • withStringBody() public

    Удобный метод для установки строки в тело ответа.

  • withType() public

    Получить обновлённый ответ с установленным типом содержимого.

  • withVary() public

    Создать новый экземпляр с установленным заголовком Vary.

  • withoutHeader() public

    Возвращает экземпляр без указанного заголовка.

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

__construct() public

__construct(array<string, mixed> $options = [])

Конструктор

Параметры

array<string, mixed> $options необязательный

список параметров для настройки ответа. Возможные значения:

Исключения

InvalidArgumentException

__debugInfo() public

__debugInfo(): array<string, mixed>

Возвращает массив, который может быть использован для описания внутреннего состояния этого объекта.

Возвращает

array<string, mixed>

__toString() public

__toString(): string

Преобразование в строку. Извлекает тело ответа в виде строки. Не отправляет заголовки. Если тело является вызываемым объектом, возвращается пустая строка.

Возвращает

string

_clearHeader() protected

_clearHeader(string $header): void

Очистить заголовок

Параметры

string $header

Ключ заголовка.

Возвращает

void

_createStream() protected

_createStream(): void

Создаёт объект потока.

Возвращает

void

_fileRange() protected

_fileRange(SplFileInfo $file, string $httpRange): void

Применяет диапазон файла к файлу и устанавливает конечную позицию.

Если запрашивается недопустимый диапазон, в ответе будет использован код состояния 416.

Параметры

SplFileInfo $file

Файл, для которого задаётся диапазон.

string $httpRange

Используемый диапазон.

Возвращает

void

_getUTCDate() protected

_getUTCDate(DateTimeInterface|string|int|null $time = null): DateTimeInterface

Возвращает объект DateTime, инициализированный в параметре $time и использующий часовой пояс UTC.

Параметры

DateTimeInterface|string|int|null $time необязательный

Действительная строка времени или экземпляр \DateTimeInterface.

Возвращает

DateTimeInterface

_setCacheControl() protected

_setCacheControl(): void

Вспомогательный метод для генерации валидного заголовка Cache-Control из параметров, установленных в других методах.

Возвращает

void

_setContentType() protected

_setContentType(string $type): void

Форматирует заголовок Content-Type на основе настроенного contentType и кодировки символов. Кодировка будет установлена в заголовке только если тип ответа text/*

Параметры

string $type

Тип для установки.

Возвращает

void

_setHeader() protected

_setHeader(string $header, string $value): void

Устанавливает заголовок.

Параметры

string $header

Ключ заголовка.

string $value

Значение заголовка.

Возвращает

void

_setStatus() protected

_setStatus(int $code, string $reasonPhrase = ''): void

Изменение статуса ответа

Параметры

int $code

Код статуса для установки.

string $reasonPhrase необязательный

Фраза причины ответа.

Возвращает

void

Исключения

InvalidArgumentException
Для недопустимых аргументов кода состояния.

checkNotModified() public

checkNotModified(Cake\Http\ServerRequest $request): bool

Проверяет, не был ли ответ изменён в соответствии с заголовками запроса 'If-None-Match' (Etag) и 'If-Modified-Since' (дата последнего изменения). Если ответ не был изменён, он помечается как таковой, чтобы клиент об этом узнал.

Для того, чтобы отметить ответ как не изменённый, необходимо установить хотя бы заголовок ответа Last-Modified etag перед вызовом этого метода. В противном случае сравнение не будет возможным.

Предупреждение Этот метод изменяет ответ на месте и следует избегать его использования.

Параметры

Cake\Http\ServerRequest $request

Объект запроса

Возвращает

bool

compress() public

compress(): bool

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

Возвращает

bool

cors() public

cors(Cake\Http\ServerRequest $request): Cake\Http\CorsBuilder

Получает экземпляр CorsBuilder для определения заголовков CORS.

Параметры

Cake\Http\ServerRequest $request

Объект запроса

Возвращает

Cake\Http\CorsBuilder

getBody() public

getBody(): StreamInterface

Получает тело сообщения.

Возвращает

StreamInterface

getCharset() public

getCharset(): string

Возвращает текущую кодировку.

Возвращает

string

getCookie() public

getCookie(string $name): array|null

Чтение одного куки из ответа.

Этот метод предоставляет чтение ожидаемых куки. Он не будет читать заголовок Set-Cookie если он установлен.

Параметры

string $name

Имя куки, которое вы хотите прочитать.

Возвращает

array|null

getCookieCollection() public

getCookieCollection(): Cake\Http\Cookie\CookieCollection

Получить CookieCollection из ответа

Возвращает

Cake\Http\Cookie\CookieCollection

getCookies() public

getCookies(): array

Получить все куки в ответе.

Возвращает ассоциативный массив имя куки => данные куки.

Возвращает

array

getFile() public

getFile(): SplFileInfo|null

Получить текущий файл, если он существует.

Возвращает

SplFileInfo|null

getHeader() public

getHeader(string $header): string[]

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

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

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

Параметры

string $header

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

Возвращает

string[]

getHeaderLine() public

getHeaderLine(string $name): string

Возвращает строку значений заголовка, разделённых запятыми.

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

ПРИМЕЧАНИЕ: не все значения заголовков могут быть корректно представлены с помощью склейки запятыми. В таких случаях используйте getHeader() и предоставьте свой разделитель при склеивании.

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

Параметры

string $name

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

Возвращает

string

getHeaders() 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); } }

Returns

array

getMimeType() public

getMimeType(string $alias): array|string|false

Возвращает определение типа mime для псевдонима

например getMimeType('pdf'); // returns 'application/pdf'

Parameters

string $alias

псевдоним типа контента для сопоставления

Returns

array|string|false

getProtocolVersion() public

getProtocolVersion(): string

Извлекает версию протокола HTTP в виде строки.

Строка ДОЛЖНА содержать только номер версии HTTP (например, "1.1", "1.0").

Returns

string

getReasonPhrase() public

getReasonPhrase(): string

Получает фразу причины ответа, связанную с кодом состояния.

Поскольку фраза причины не является обязательным элементом в строке состояния ответа, значение фразы причины МОЖЕТ быть null. Реализации МОГУТ выбрать возвращение рекомендуемой по умолчанию фразы причины RFC 7231 (или тех, которые перечислены в реестре кодов состояния HTTP IANA) для кода состояния ответа.

Returns

string

Links

https://tools.ietf.org/html/rfc7231#section-6

http://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml

getStatusCode() public

getStatusCode(): int

Получает код состояния ответа.

Код состояния — это 3-значный целочисленный код результата попытки сервера понять и удовлетворить запрос.

Returns

int

getType() public

getType(): string

Возвращает текущий тип контента.

Returns

string

hasHeader() public

hasHeader(string $header): bool

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

Parameters

string $header

Имя заголовка без учёта регистра.

Returns

bool

mapType() public

mapType(array|string $ctype): array|string|null

Сопоставляет тип контента обратно с псевдонимом

например mapType('application/pdf'); // returns 'pdf'

Parameters

array|string $ctype

Либо строка типа контента для сопоставления, либо массив типов.

Returns

array|string|null

notModified() public

notModified(): void

Устанавливает ответ как «Не изменен», удаляя любое содержимое тела, устанавливая код состояния в «304 Не изменен» и удаляя все конфликтующие заголовки

Предупреждение Этот метод изменяет ответ на месте и следует избегать его использования.

Returns

void

outputCompressed() public

outputCompressed(): bool

Возвращает, будет ли результирующий вывод сжат PHP

Returns

bool

resolveType() protected

resolveType(string $contentType): string

Преобразует и проверяет типы контента.

Parameters

string $contentType

Тип контента или псевдоним типа.

Returns

string

Throws

InvalidArgumentException
Когда используется недопустимый тип контента или псевдоним.

setTypeMap() public

setTypeMap(string $type, array<string>|string $mimeType): void

Устанавливает определение типа контента в карту.

Например: setTypeMap('xhtml', ['application/xhtml+xml', 'application/xhtml'])

Это необходимо для RequestHandlerComponent и распознавания типов.

Parameters

string $type

Тип контента.

array<string>|string $mimeType

Определение типа mime.

Returns

void

validateFile() protected

validateFile(string $path): SplFileInfo

Проверяет, является ли путь к файлу допустимым телом ответа.

Parameters

string $path

Путь к файлу.

Returns

SplFileInfo

Throws

Cake\Http\Exception\NotFoundException

withAddedHeader() public

withAddedHeader(string $name, string|string[] $value): static

Возвращает экземпляр с добавленным указанным заголовком со значением.

Существующие значения для указанного заголовка будут сохранены. Новое значение(я) будет(ут) добавлено(ы) к существующему списку. Если заголовка ранее не существовало, он будет добавлен.

Этот метод ДОЛЖЕН быть реализован таким образом, чтобы сохранить неизменяемость сообщения и ДОЛЖЕН возвращать экземпляр, содержащий новый заголовок и/или значение.

Parameters

string $name

Имя поля заголовка без учёта регистра для добавления.

string|string[] $value

Значение(я) заголовка.

Returns

static

Throws

Exception\InvalidArgumentException
Для недопустимых имён или значений заголовков.

withAddedLink() public

withAddedLink(string $url, array<string, mixed> $options = []): static

Создает новый ответ с установленным заголовком Link.

Examples

$response = $response->withAddedLink('http://example.com?page=1', ['rel' => 'prev'])
    ->withAddedLink('http://example.com?page=3', ['rel' => 'next']);

Сгенерирует:

Link: <http://example.com?page=1>; rel="prev"
Link: <http://example.com?page=3>; rel="next"

Parameters

string $url

URL LinkHeader.

array<string, mixed> $options optional

Параметры LinkHeader.

Returns

static

withBody() public

withBody(StreamInterface $body): static

Возвращает экземпляр с указанным телом сообщения.

Тело ДОЛЖНО быть объектом StreamInterface.

Этот метод ДОЛЖЕН быть реализован таким образом, чтобы сохранить неизменяемость сообщения, и ДОЛЖЕН возвращать новый экземпляр, содержащий новый поток тела.

Parameters

StreamInterface $body

Тело.

Returns

static

Throws

Exception\InvalidArgumentException
Когда тело недействительно.

withCache() public

withCache(string|int $since, string|int $time = '+1 day'): static

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

Parameters

string|int $since

действительное время с момента, когда текст ответа не был изменен

string|int $time optional

действительное время истечения срока действия кэша

Returns

static

withCharset() public

withCharset(string $charset): static

Получает новый экземпляр с обновленной кодировкой.

Parameters

string $charset

Строка кодировки.

Returns

static

withCookie() public

withCookie(Cake\Http\Cookie\CookieInterface $cookie): static

Создает новый ответ с установленным cookie.

Example

// add a cookie object
$response = $response->withCookie(new Cookie('remember_me', 1));

Parameters

Cake\Http\Cookie\CookieInterface $cookie

объект cookie

Returns

static

withCookieCollection() public

withCookieCollection(Cake\Http\Cookie\CookieCollection $cookieCollection): static

Получить новый экземпляр с предоставленной коллекцией куки.

Параметры

Cake\Http\Cookie\CookieCollection $cookieCollection

Коллекция куки для установки.

Возвращает

static

withDisabledCache() public

withDisabledCache(): static

Создать новый экземпляр с заголовками, которые указывают клиенту не кэшировать ответ.

Возвращает

static

withDownload() public

withDownload(string $filename): static

Создать новый экземпляр с установленным заголовком Content-Disposition.

Параметры

string $filename

Имя файла, как его будет загружать браузер.

Возвращает

static

withEtag() public

withEtag(string $hash, bool $weak = false): static

Создать новый экземпляр с установленным заголовком Etag.

Etag — это сильный индикатор того, что ответ может быть кэширован HTTP-клиентом. Плохой способ генерации Etag — создание хэша выходных данных ответа, вместо этого создайте уникальный хэш уникальных компонентов, которые идентифицируют запрос, например, время изменения, идентификатор ресурса и все остальное, что вы считаете уникальным для ответа.

Второй параметр используется для информирования клиентов о том, что содержимое изменилось, но семантически оно эквивалентно существующим кэшированным значениям. Рассмотрим страницу с счётчиком посещений, два разных просмотра страницы эквивалентны, но отличаются на несколько байт. Это позволяет клиенту решить, следует ли использовать кэшированные данные.

Параметры

string $hash

Уникальный хэш, который идентифицирует этот ответ.

bool $weak optional

Является ли ответ семантически таким же, как и другие с тем же хэшем или нет. По умолчанию false.

Возвращает

static

withExpiredCookie() public

withExpiredCookie(Cake\Http\Cookie\CookieInterface $cookie): static

Создать новый ответ с установленной истекшей куки.

Пример

// add a cookie object
$response = $response->withExpiredCookie(new Cookie('remember_me'));

Параметры

Cake\Http\Cookie\CookieInterface $cookie

Объект куки.

Возвращает

static

withExpires() public

withExpires(DateTimeInterface|string|int|null $time): static

Создать новый экземпляр с установленным заголовком Expires.

Примеры:

// Will Expire the response cache now
$response->withExpires('now')

// Will set the expiration in next 24 hours
$response->withExpires(new DateTime('+1 day'))

Параметры

DateTimeInterface|string|int|null $time

Действительная строка времени или экземпляр \DateTime.

Возвращает

static

withFile() public

withFile(string $path, array<string, mixed> $options = []): static

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

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

Если $_SERVER['HTTP_RANGE'] установлено, будет возвращена часть файла вместо всего файла.

Ключи параметров

  • name: Альтернативное имя для загрузки.
  • download: Если true устанавливает заголовок загрузки и принуждает файл загрузить, а не отображать встроеным.

Параметры

string $path

Абсолютный путь к файлу.

array<string, mixed> $options optional

Параметры Смотрите выше.

Возвращает

static

Исключения

Cake\Http\Exception\NotFoundException

withHeader() public

withHeader(string $name, string|string[] $value): static

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

Хотя имена заголовков регистронезависимы, регистр заголовка будет сохранён этой функцией и возвращён из getHeaders().

Этот метод ДОЛЖЕН быть реализован таким образом, чтобы сохранить неизменяемость сообщения и ДОЛЖЕН вернуть экземпляр с новым и/или обновлённым заголовком и значением.

Параметры

string $name

Регистронезависимое имя поля заголовка.

string|string[] $value

Значение заголовка.

Возвращает

static

Исключения

Exception\InvalidArgumentException
Для недопустимых имён или значений заголовков.

withLength() public

withLength(string|int $bytes): static

Создать новый ответ с установленным заголовком Content-Length.

Параметры

string|int $bytes

Количество байт.

Возвращает

static

withLocation() public

withLocation(string $url): static

Возвратить экземпляр с обновлённым заголовком местоположения.

Если текущий код состояния — 200, он будет заменён на 302.

Параметры

string $url

Местоположение для перенаправления.

Возвращает

static

withMaxAge() public

withMaxAge(int $seconds): static

Создать экземпляр с установленной директивой Cache-Control max-age.

max-age — это количество секунд, по истечении которых ответ больше не должен рассматриваться как хороший кандидат для извлечения из локального (клиентского) кэша.

Параметры

int $seconds

Секунды, в течение которых кэшированный ответ может считаться действительным.

Возвращает

static

withModified() public

withModified(DateTimeInterface|string|int $time): static

Создать новый экземпляр с установленным заголовком Last-Modified.

Примеры:

// Will Expire the response cache now
$response->withModified('now')

// Will set the expiration in next 24 hours
$response->withModified(new DateTime('+1 day'))

Параметры

DateTimeInterface|string|int $time

Действительная строка времени или экземпляр \DateTime.

Возвращает

static

withMustRevalidate() public

withMustRevalidate(bool $enable): static

Создать экземпляр с установленной директивой Cache-Control must-revalidate.

Устанавливает директиву Cache-Control must-revalidate. must-revalidate указывает, что ответ не должен обслуживаться устаревшим кэшем ни при каких обстоятельствах без предварительной перевалидации с исходником.

Параметры

bool $enable

Если boolean устанавливает или отменяет директиву.

Возвращает

static

withNotModified() public

withNotModified(): static

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

Это удалит любое содержимое тела, установит код состояния на "304" и удалит заголовки, описывающие тело ответа.

Возвращает

static

withProtocolVersion() public

withProtocolVersion(string $version): static

Возвратить экземпляр со указанной версией HTTP-протокола.

Строка версии ДОЛЖНА содержать только номер версии HTTP (например, "1.1", "1.0").

Этот метод ДОЛЖЕН быть реализован таким образом, чтобы сохранить неизменяемость сообщения и ДОЛЖЕН вернуть экземпляр с новой версией протокола.

Параметры

string $version

Версия HTTP-протокола

Возвращает

static

withSharable() public

withSharable(bool $public, int|null $time = null): static

Создать новый экземпляр с установленной директивой Cache-Control public/private.

Параметры

bool $public

Если установлено в true, заголовок Cache-Control будет установлен как public. Если установлено в false, ответ будет установлен как private.

int|null $time optional

Время в секундах, по истечении которого ответ больше не должен считаться свежим.

Возвращает

static

withSharedMaxAge() public

withSharedMaxAge(int $seconds): static

Создать новый экземпляр с директивой Cache-Control s-maxage.

max-age — количество секунд, по истечении которых ответ больше не считается подходящим для получения из общего кэша (например, в прокси-сервере).

Параметры

int $seconds

Количество секунд для shared max-age

Возвращает

static

withStatus() public

withStatus(int $code, string $reasonPhrase = ''): static

Возвращает экземпляр со заданным кодом состояния и, необязательно, фразой причины.

Если фраза причины не указана, реализации МОГУТ использовать по умолчанию рекомендованную RFC 7231 или IANA фразу причины для кода состояния ответа.

Этот метод ДОЛЖЕН быть реализован таким образом, чтобы сохранить неизменность сообщения и ДОЛЖЕН вернуть экземпляр с обновлённым кодом состояния и фразой причины.

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

Существуют внешние пакеты, такие как fig/http-message-util, которые предоставляют константы кодов состояния HTTP. Их можно использовать с любым методом, который принимает или возвращает целое число кода состояния. Однако следует помнить, что эти константы могут включать коды состояния, которые теперь недопустимы, что приведёт к исключению \InvalidArgumentException.

Параметры

int $code

Целое число кода состояния (3 цифры) для установки.

string $reasonPhrase необязательно

Фраза причины, используемая с указанным кодом состояния; если не указана, реализации МОГУТ использовать значения по умолчанию, как предложено в спецификации HTTP.

Возвращает

static

Исключения

InvalidArgumentException
Для некорректных аргументов кода состояния.

Ссылки

https://tools.ietf.org/html/rfc7231#section-6

https://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml

withStringBody() public

withStringBody(string|null $string): static

Удобный метод для установки строки в тело ответа.

Параметры

string|null $string

Строка, которая должна быть отправлена.

Возвращает

static

withType() public

withType(string $contentType): static

Получить обновлённый ответ с установленным типом контента.

Если вы попытаетесь установить тип на ответ с кодом состояния 304 или 204, тип контента не будет действовать, так как эти коды состояния не имеют типов контента.

Параметры

string $contentType

Расширение файла, которое будет сопоставлено с типом MIME, или конкретный тип MIME.

Возвращает

static

withVary() public

withVary(array<string>|string $cacheVariances): static

Создать новый экземпляр с установленным заголовком Vary.

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

Параметры

array<string>|string $cacheVariances

Строка Vary или массив, содержащий список вариаций.

Возвращает

static

withoutHeader() public

withoutHeader(string $name): static

Возвращает экземпляр без указанного заголовка.

Разрешение заголовков ДОЛЖНО выполняться без учёта регистра.

Этот метод ДОЛЖЕН быть реализован таким образом, чтобы сохранить неизменность сообщения и ДОЛЖЕН вернуть экземпляр, удаляющий указанный заголовок.

Параметры

string $name

Имя поля заголовка (без учёта регистра) для удаления.

Возвращает

static

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

$_cacheDirectives protected

Содержит все директивы кэширования, которые будут преобразованы в заголовки при отправке запроса.

Тип

array

$_charset protected

Кодировка символов тела ответа.

Тип

string

$_cookies protected

Коллекция куки-файлов для отправки клиенту.

Тип

Cake\Http\Cookie\CookieCollection

$_file protected

Объект файла для чтения файла как ответа.

Тип

SplFileInfo|null

$_fileRange protected

Диапазон файла. Используется для запроса диапазонов файлов.

Тип

array<int>

$_mimeTypes protected

Содержит сопоставления ключей типов к типам MIME для известных типов MIME.

Тип

array<string, mixed>

$_reasonPhrase protected

Фраза причины.

Тип

string

$_status protected

Код состояния для отправки клиенту.

Тип

int

$_statusCodes protected

Допустимые коды состояния HTTP и их описания по умолчанию.

Тип

array<int, string>

$_streamMode protected

Параметры режима потоковой передачи.

Тип

string

$_streamTarget protected

Целевой объект потоковой передачи или ресурс.

Тип

resource|string

$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.3/class-Cake.Http.Response.html

Spec-Zone.ru

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