Класс Response
Класс ответа, предназначенный для тестовых случаев.
- Cake\Http\Response реализует Psr\Http\Message\ResponseInterface использует Zend\Diactoros\MessageTrait
-
Cake\TestSuite\Stub\Response
Унаследованные свойства
-
_cacheDirectives,_charset,_contentType,_cookies,_file,_fileRange,_mimeTypes,_protocol,_reasonPhrase,_status,_statusCodes,_streamMode,_streamTarget
Краткое описание методов
- send() publicЗаглушка метода send() для того, чтобы заголовки и вывод не отправлялись.
Подробное описание методов
send()source public
send( )
Заглушка метода send() для того, чтобы заголовки и вывод не отправлялись.
Возвращает
$this
Переопределяет
Cake\Http\Response::send() Методы, унаследованные от Cake\Http\Response
__construct()source public
__construct( array $options = [] )
Конструктор
Параметры
- массив
$optionsнеобязательно [] список параметров для настройки ответа. Возможные значения: - body: текст ответа, который должен быть отправлен клиенту - statusCodes: дополнительные разрешённые коды ответа - status: код HTTP-статуса для ответа - type: полное строковое значение MIME-типа или расширение, отображённое в этом классе - charset: кодировка символов для тела ответа
__debugInfo()source public
__debugInfo( )
Возвращает массив, который может быть использован для описания внутреннего состояния этого объекта.
Возвращает
массив__toString()source public
__toString( )
Преобразование в строку. Извлекает тело ответа в виде строки. Не отправляет заголовки. Если body является вызываемым объектом, возвращается пустая строка.
Возвращает
строка_clearBuffer()source protected deprecated
_clearBuffer( )
Очищает содержимое самого верхнего буфера вывода и отбрасывает его
Устаревшее
3.2.4 Этот метод больше не нуженВозвращает
логическое значение_clearHeader()source protected
_clearHeader( string $header )
Очистка заголовка
Параметры
- строка
$header - Ключ заголовка.
_fileRange()source protected deprecated
_fileRange( Cake\Filesystem\File $file , string $httpRange )
Применение диапазона файла к файлу и установка конечного смещения.
Если запрос диапазона недействителен, в ответе будет использоваться код статуса 416.
Устаревшее
3.4.0 В долгосрочной перспективе это нужно переработать, чтобы следовать парадигме неизменяемости. Однако пока проще оставить всё как есть.
Параметры
-
Cake\Filesystem\File$file - Файл, для которого нужно задать диапазон.
- строка
$httpRange - Диапазон для использования.
_flushBuffer()source protected deprecated
_flushBuffer( )
Сбрасывает содержимое буфера вывода
Устаревшее
3.2.4 Этот метод больше не нужен_getUTCDate()source protected
_getUTCDate( string|integer|DateTimeInterface|null $time = null )
Возвращает объект DateTime, инициализированный в параметре $time и использующий часовой пояс UTC
Параметры
- строка|целое число|DateTimeInterface|null
$timeнеобязательно null - Действительная строка времени или экземпляр \DateTimeInterface.
Возвращает
DateTimeInterface_handleCallableBody()source protected
_handleCallableBody( callable $content )
Обрабатывает вызываемый объект тела для обеспечения обратной совместимости.
Параметры
- вызываемый объект
$content - Вызываемый контент.
Возвращает
строка_isActive()source protected deprecated
_isActive( )
Возвращает true, если подключение всё ещё активно
Устаревшее
3.4.0 Будет удалено в 4.0.0Возвращает
логическое значение_sendContent()source protected deprecated
_sendContent( string|callable $content )
Отправляет строку содержимого клиенту.
Если содержимое является вызываемым объектом, он вызывается. Вызываемый объект должен либо возвращать строку, либо выводить содержимое напрямую и не иметь значения возврата.
Устаревшее
3.4.0 Будет удалено в 4.0.0Параметры
- строка|вызываемый объект
$content Строка для отправки в качестве тела ответа или вызываемый объект, который возвращает/выводит содержимое.
_sendFile()source protected deprecated
_sendFile( Cake\Filesystem\File $file , array $range )
Читает файл и выводит содержимое клиенту.
Устаревшее
3.4.0 Будет удалено в 4.0.0Параметры
-
Cake\Filesystem\File$file - Объект файла
- массив
$range - Диапазон для чтения из файла.
Возвращает
логическое значениеTrue, если весь файл успешно выведен, или false, если соединение с клиентом было потеряно во время передачи
_sendHeader()source protected deprecated
_sendHeader( string $name , string|null $value = null )
Отправляет заголовок клиенту.
Устаревшее
3.4.0 Будет удалено в 4.0.0Параметры
- строка
$name - имя заголовка
- строка|null
$valueнеобязательно null - значение заголовка
_setCacheControl()source protected
_setCacheControl( )
Вспомогательный метод для генерации корректного заголовка Cache-Control из опций, установленных в других методах
_setContent()source protected deprecated
_setContent( )
Устанавливает тело ответа на пустой текст, если код статуса равен 204 или 304
Устаревшее
3.4.0 Будет удалено в 4.0.0_setContentType()source protected
_setContentType( )
Форматирует заголовок Content-Type на основе настроек contentType и charset; charset будет установлен в заголовке только в том случае, если тип ответа является текстовым/*
_setCookies()source protected устаревшее
_setCookies( )
Устанавливает куки, которые были добавлены с помощью Cake\Http\Response::cookie() до отправки любого другого вывода клиенту. Куки будут установлены в порядке их добавления.
Устаревшее
3.4.0 Будет удалено в 4.0.0_setHeader()source protected
_setHeader( string $header , string $value )
Устанавливает заголовок.
Параметры
- строка
$header - Ключ заголовка.
- строка
$value - Значение заголовка.
_setStatus()source protected
_setStatus( integer $code , string $reasonPhrase = '' )
Изменение состояния ответа
Параметры
- целое число
$code - Код для установки.
- строка
$reasonPhraseнеобязательно '' - Фраза причины ответа.
Исключения
InvalidArgumentExceptionДля неверных аргументов кода состояния.
body()source public устаревшее
body( string|callable|null $content = null )
Буферизует сообщение ответа, которое будет отправлено. Если $content равен null, возвращается текущий буфер.
Устаревшее
3.4.0 Изменяемые методы ответа устарели. ИспользуйтеwithBody()/withStringBody() и getBody() вместо них.Параметры
- строка|вызов функции|null
$contentнеобязательно null - строка или вызов функции, которые нужно отправить
Возвращает
строка|nullТекущий буфер сообщений, если параметр $content передан как null
cache()source public устаревшее
cache( string $since , string $time = '+1 day' )
Устанавливает правильные заголовки для инструктирования клиента кешировать ответ.
Устаревшее
3.4.0 Используйте withCache() вместо этого.Параметры
- строка
$since - действительное значение времени с момента последнего изменения текста ответа
- строка
$timeнеобязательно '+1 день' - действительное время для истечения срока действия кеша
charset()source public устаревшее
charset( string|null $charset = null )
Устанавливает кодировку ответа. Если $charset равен null, возвращается текущая кодировка.
Устаревшее
3.5.0 Используйте getCharset()/withCharset() вместо этого.Параметры
- строка|null
$charsetнеобязательно null - Строка кодировки символов.
Возвращает
строкаТекущая кодировка
checkNotModified()source public
checkNotModified( Cake\Http\ServerRequest $request )
Проверяет, не был ли ответ изменен в соответствии с заголовками запроса 'If-None-Match' (Etags) и 'If-Modified-Since' (дата последнего изменения). Если ответ не был изменён, он помечается как таковой, чтобы клиент мог об этом узнать.
Чтобы пометить ответ как неизменённый, необходимо установить как минимум заголовок ответа Last-Modified etag перед вызовом этого метода. Иначе сравнение не будет возможно.
Предупреждение Этот метод изменяет ответ на месте и следует избегать его использования.
Параметры
-
Cake\Http\ServerRequest$request - Объект запроса
Возвращает
логическое значениеБыло ли помечено, что ответ не изменён.
compress()source public
compress( )
Устанавливает правильный обработчик буферизации вывода для отправки сжатого ответа. Ответы будут сжаты с помощью zlib, если расширение доступно.
Возвращает
логическое значениеfalse, если клиент не принимает сжатые ответы или обработчик недоступен, true в противном случае
convertCookieToArray()source protected
convertCookieToArray( Cake\Http\Cookie\CookieInterface $cookie )
Преобразует куки в массив его свойств.
Этот метод совместим со старым поведением Cake\Http\Response, где httponly является httpOnly и expires является expire
Параметры
-
Cake\Http\Cookie\CookieInterface$cookie - Объект куки.
Возвращает
массивcookie()source public устаревшее
cookie( array|null $options = null )
Получение/установка конфигураций куки
Этот метод работает как setter/getter в зависимости от типа аргумента. Если метод вызывается без аргументов, он возвращает все конфигурации.
Если метод вызывается со строкой в качестве аргумента, он возвращает заданную конфигурацию, если она установлена, или null, если она не установлена.
Если метод вызывается с массивом в качестве аргумента, он установит конфигурацию куки в контейнер куки.
### Опции (при установке конфигурации) - name: Имя куки - value: Значение куки - expire: Время истечения срока действия куки - path: Путь, к которому применяется куки - domain: Домен, для которого предназначена куки - secure: Куки предназначена для HTTPS? - httpOnly: Куки доступна в клиенте?
Примеры
Получение всех куки
$this->cookie()
Получение определённой конфигурации куки
$this->cookie('MyCookie')
Установка конфигурации куки
$this->cookie((array) $options)
Устаревшее
3.4.0 Используйте getCookie(), getCookies() и withCookie() вместо этого.Параметры
- массив|null
$optionsнеобязательно null Либо null для получения всех куки, строка для конкретной куки или массив для установки куки.
Возвращает
смешанный типcors()source public
cors( Cake\Http\ServerRequest $request , string|array $allowedDomains = [] , string|array $allowedMethods = [] , string|array $allowedHeaders = [] )
Настройка доступа для источника и методов при кросс-доменных запросах
Этот метод позволяет несколькими способами настроить домены, см. примеры
Полный URI
cors($request, 'https://www.cakephp.org');
URI с подстановкой
cors($request, 'https://*.cakephp.org');
Игнорирование запрошенного протокола
cors($request, 'www.cakephp.org');
Любой URI
cors($request, '*');
Список разрешённых URI
cors($request, ['http://www.cakephp.org', '*.google.com', 'https://myproject.github.io']);
Примечание Параметры $allowedDomains, $allowedMethods, $allowedHeaders устарели. Вместо этого следует использовать объект билдера.
Параметры
-
Cake\Http\ServerRequest$request - Объект запроса
- строка|массив
$allowedDomainsнеобязательно [] - Список разрешённых доменов, см. описание метода для получения дополнительной информации
- строка|массив
$allowedMethodsнеобязательно [] - Список разрешённых HTTP-методов
- строка|массив
$allowedHeadersнеобязательно [] - Список разрешённых HTTP-заголовков
Возвращает
Cake\Http\CorsBuilderОбъект билдера, предоставляющий удобный интерфейс для определения дополнительных заголовков CORS.
disableCache()source public устаревшее
disableCache( )
Устанавливает правильные заголовки для инструктирования клиента не кешировать ответ
Устаревшее
3.4.0 Используйте withDisabledCache() вместо этого.download()source public устаревшее
download( string $filename )
Устанавливает правильные заголовки для инструктирования браузера загрузить ответ как файл.
Устаревшее
3.4.0 Используйте withDownload() вместо этого.Параметры
- строка
$filename - Имя файла, как браузер загрузит ответ
etag()source public устаревшее
etag( string|null $hash = null , boolean $weak = false )
Устанавливает заголовок Etag ответа. Etag — это сильный индикатор того, что ответ может быть кэширован HTTP-клиентом. Плохой способ генерации Etag — это создание хэша всего выходного ответа. Вместо этого создайте уникальный хэш уникальных компонентов, которые идентифицируют запрос, таких как время изменения, идентификатор ресурса и всё остальное, что вы считаете уникальным.
Второй параметр используется для указания клиентам, что содержимое изменилось, но семантически он может использоваться как одно и то же. Например, подумайте о странице с счётчиком посещений. Два разных просмотра страницы эквивалентны, но отличаются на несколько байт. Это оставляет за клиентом решение использовать или не использовать кэшированную страницу.
Если параметры не переданы, возвращается текущий заголовок Etag.
Устаревшее
3.4.0 Используйте с withEtag() вместо этого.Параметры
- string|null
$hashнеобязательно null - Уникальный хэш, идентифицирующий этот ответ
- boolean
$weakнеобязательно false Указывает, является ли ответ семантически таким же, как и другие с тем же хэшем или нет
Возвращает
string|nullexpires()source public устаревшее
expires( string|DateTimeInterface|null $time = null )
Устанавливает заголовок Expires для ответа, используя время истечения срока действия. Если вызывается без параметров, возвращается текущее значение Expires.
Примеры:
$response->expires('now') Сделает кэш ответа недействительным сейчас $response->expires(new DateTime('+1 day')) Установит срок действия истечения через следующие 24 часа $response->expires() Вернёт текущее значение заголовка истечения срока действия
Устаревшее
3.4.0 Используйте с withExpires() вместо этого.Параметры
- string|DateTimeInterface|null
$timeнеобязательно null - Действительная строка времени или экземпляр DateTime.
Возвращает
string|nullfile()source public устаревшее
file( string $path , array $options = [] )
Настройка для отображения или загрузки указанного файла.
Если $_SERVER['HTTP_RANGE'] установлено, будет возвращена часть файла вместо всего файла.
Ключи параметров
- name: Альтернативное имя файла для загрузки
- download: Если
trueустанавливает заголовок загрузки и принуждает к загрузке файла вместо его отображения в браузере
Устаревшее
3.4.0 Используйте с withFile() вместо этого.Параметры
- string
$path Путь к файлу. Если путь не является абсолютным и не разрешается до файла,
APPбудет добавлен в начало пути (это поведение устарело).- array
$optionsнеобязательно [] - Параметры Смотрите выше.
Выбрасывает
Cake\Http\Exception\NotFoundExceptiongetCookie()source public
getCookie( string $name )
Чтение одного cookie из ответа.
Этот метод обеспечивает доступ для чтения к ожидаемым cookie. Он не будет читать заголовок Set-Cookie если он установлен.
Параметры
- string
$name - Имя cookie, которое вы хотите прочитать.
Возвращает
array|nullДанные cookie или null
getCookieCollection()source public
getCookieCollection( )
Получение CookieCollection из ответа
Возвращает
Cake\Http\Cookie\CookieCollectiongetCookies()source public
getCookies( )
Получение всех cookie в ответе.
Возвращает ассоциативный массив имени cookie => данные cookie.
Возвращает
arraygetFile()source public
getFile( )
Получение текущего файла, если он существует.
Возвращает
Cake\Filesystem\File|nullФайл для использования в ответе или null
getMimeType()source public
getMimeType( string $alias )
Возвращает определение типа MIME для псевдонима
например, getMimeType('pdf'); // returns 'application/pdf'
Параметры
- string
$alias - псевдоним типа контента для сопоставления
Возвращает
mixedСтрока сопоставленного типа MIME или false, если псевдоним $alias не сопоставлен
getReasonPhrase()source public
getReasonPhrase( )
Возвращает фразу причины ответа, связанную с кодом состояния.
Поскольку фраза причины не является обязательным элементом в строке состояния ответа, значение фразы причины может быть null. Реализации могут выбрать возврат рекомендуемой фразы причины RFC 7231 (или перечисленных в реестре кодов состояния HTTP IANA) для кода состояния ответа.
Возвращает
stringФраза причины; должна вернуть пустую строку, если её нет.
Ссылка
https://tools.ietf.org/html/rfc7231#section-6http://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml
getSimpleHeaders()source protected
getSimpleHeaders( )
Вспомогательная функция обратной совместимости для получения сглаженных заголовков.
Раньше CakePHP хранил заголовки как простой словарь. Теперь, когда мы поддерживаем PSR7, внутреннее хранилище имеет каждый заголовок в виде массива.
Возвращает
arraygetStatusCode()source public
getStatusCode( )
Получение кода состояния ответа.
Код состояния — это трёхзначное целое число результата попытки сервера понять и удовлетворить запрос.
Возвращает
integerКод состояния.
header()source public устаревшее
header( string|array|null $header = null , string|array|null $value = null )
Буферизация строки заголовка для отправки. Возвращает полный список буферизованных заголовков
Один заголовок
header('Location', 'http://example.com'); Несколько заголовков
header(['Location' => 'http://example.com', 'X-Extra' => 'My header']);
Заголовок-строка
header('WWW-Authenticate: Negotiate'); Массив строковых заголовков
header(['WWW-Authenticate: Negotiate', 'Content-type: application/pdf']);
Несколько вызовов для установки одного и того же имени заголовка будут иметь тот же эффект, что и установка заголовка один раз с последним отправленным значением для него.
header('WWW-Authenticate: Negotiate');
header('WWW-Authenticate: Not-Negotiate'); будет иметь тот же эффект, что и только
header('WWW-Authenticate: Not-Negotiate'); Устаревшее
3.4.0 ИспользуйтеwithHeader(), getHeaderLine() и getHeaders() вместо этого.Параметры
- string|array|null
$headerнеобязательно null Массив строк заголовков или одна строка заголовка — также принимается ассоциативный массив «имя заголовка» => «значение заголовка» — также принимается массив строковых заголовков
- string|array|null
$valueнеобязательно null - Значение(я) заголовка
Возвращает
arrayСписок заголовков для отправки
httpCodes()source public устаревший
httpCodes( integer|array|null $code = null )
Запрашивает и устанавливает допустимые HTTP-коды ответов и сообщения.
Устаревший
3.4.0 Будет удалён в 4.0.0Параметры
- integer|array|null
$codeнеобязательный null -
Если $code является целым числом, то соответствующий код/сообщение возвращается, если существует, в противном случае null. Если $code является массивом, то ключи используются как коды, а значения как сообщения, которые нужно добавить к стандартным HTTP-кодам. Коды должны быть целыми числами больше 99 и меньше 1000. Имейте в виду, что спецификация HTTP определяет, что коды статусов начинаются с цифры от 1 до 5, которая определяет класс ответа, который должен ожидать клиент. Пример:
httpCodes(404); // returns [404 => 'Not Found'] httpCodes([ 381 => 'Unicorn Moved', 555 => 'Unexpected Minotaur' ]); // sets these new values, and returns true httpCodes([ 0 => 'Nothing Here', -1 => 'Reverse Infinity', 12345 => 'Universal Password', 'Hello' => 'World' ]); // throws an exception due to invalid codes For more on HTTP status codes see: http://www.w3.org/Protocols/rfc2616/rfc2616-sec6.html#sec6.1
Возвращает
mixedАссоциативный массив HTTP-кодов в качестве ключей и строк сообщений в качестве значений, или null, если заданного $code не существует.
Выбрасывает
InvalidArgumentExceptionЕсли попытка добавить неверный код состояния
length()source public устаревший
length( integer|null $bytes = null )
Устанавливает заголовок Content-Length для ответа. Если вызов без аргументов, возвращает последний установленный Content-Length.
Устаревший
3.4.0 Используйте withLength() для установки длины вместо этого.Параметры
- integer|null
$bytesнеобязательный null - Количество байтов
Возвращает
string|nulllocation()source public устаревший
location( null|string $url = null )
Доступ к заголовку расположения.
Получение/установка значения заголовка Location.
Устаревший
3.4.0 Изменяемые ответы устарели. Используйте withLocation() и getHeaderLine() вместо этого.
Параметры
- null|string
$urlнеобязательный null - Либо null для получения текущего расположения, либо строка для установки нового.
Возвращает
string|nullПри установке расположения возвращается null. При чтении расположения возвращается строка текущего значения заголовка расположения (если таковое имеется).
mapType()source public
mapType( string|array $ctype )
Преобразует тип содержимого обратно в псевдоним
Например: mapType('application/pdf'); // returns 'pdf'
Параметры
- string|array
$ctype - Строка типа содержимого для преобразования или массив типов.
Возвращает
string|array|nullПсевдонимы для предоставленных типов.
maxAge()source public устаревший
maxAge( integer|null $seconds = null )
Устанавливает директиву Cache-Control max-age. Значение max-age — это количество секунд, после которого ответ больше не должен рассматриваться как подходящий для извлечения из локального (клиентского) кэша. Если вызвана без параметров, эта функция возвращает текущее значение max-age, если оно есть.
Устаревший
3.6.5 Используйте withMaxAge() вместо этого.Параметры
- integer|null
$secondsнеобязательный null - если null, метод вернет текущее значение max-age
Возвращает
integer|nullmodified()source public устаревший
modified( string|DateTimeInterface|null $time = null )
Устанавливает заголовок Last-Modified для ответа, принимая время изменения. Если вызвана без параметров, вернёт текущее значение Last-Modified.
Примеры:
$response->modified('now') Установит Last-Modified на текущее время $response->modified(new DateTime('+1 day')) Установит дату изменения в прошлом за 24 часа $response->modified() Вернёт текущее значение заголовка Last-Modified
Устаревший
3.4.0 Используйте withModified() вместо этого.Параметры
- string|DateTimeInterface|null
$timeнеобязательный null - Действительная строка времени или экземпляр \DateTime.
Возвращает
string|nullmustRevalidate()source public устаревший
mustRevalidate( boolean|null $enable = null )
Устанавливает директиву Cache-Control must-revalidate. must-revalidate указывает, что ответ не должен обслуживаться устаревшим кешем при любых обстоятельствах без предварительной перевалидации с исходником. Если вызвана без параметров, эта функция возвращает, присутствует ли must-revalidate.
Устаревший
3.4.0 Используйте withMustRevalidate() вместо этого.Параметры
- boolean|null
$enableнеобязательный null Если null, метод вернёт текущее значение must-revalidate. Если boolean, установит или сбросит директиву.
Возвращает
booleannotModified()source public
notModified( )
Устанавливает ответ как "Не изменён", удаляя содержимое тела, устанавливая код состояния на "304 Not Modified" и удаляя все конфликтующие заголовки.
Предупреждение Этот метод изменяет ответ на месте и следует избегать его использования.
outputCompressed()source public
outputCompressed( )
Возвращает, будет ли результирующий вывод сжат PHP.
Возвращает
booleanprotocol()source public устаревший
protocol( string|null $protocol = null )
Устанавливает протокол, используемый при отправке ответа. По умолчанию HTTP/1.1. Если вызывается без аргументов, возвращает текущий настроенный протокол.
Устаревший
3.4.0 Используйте getProtocolVersion() вместо этого.Параметры
- string|null
$protocolнеобязательный null - Протокол, используемый для отправки ответа.
Возвращает
stringТекущий установленный протокол
resolveType()source protected
resolveType( string $contentType )
Преобразует и проверяет типы содержимого.
Параметры
- string
$contentType - Тип содержимого или псевдоним типа.
Возвращает
stringРазрешённый тип содержимого
Выбрасывает
InvalidArgumentExceptionПри использовании недопустимого типа содержимого или псевдонима.
sendHeaders()source public устаревший
sendHeaders( )
Отправляет HTTP-заголовки и куки.
Устаревший
3.4.0 Будет удалён в 4.0.0setTypeMap()source public
setTypeMap( string $type , string|array $mimeType )
Устанавливает определение типа содержимого в карту.
Например: setTypeMap('xhtml', ['application/xhtml+xml', 'application/xhtml'])
Это необходимо для RequestHandlerComponent и распознавания типов.
Параметры
- string
$type - Тип содержимого.
- string|array
$mimeType - Определение типа MIME.
sharable()source public
sharable( boolean|null $public = null , integer|null $time = null )
Устанавливает, может ли ответ кэшироваться промежуточными прокси-серверами. Этот метод управляет директивами public или private в заголовке Cache-Control.
Параметры
- boolean|null
$publicнеобязательный null Если установлено в true, заголовок Cache-Control будет установлен как public. Если установлено в false, ответ будет установлен как private. Если не указано значение, возвращается, является ли ответ общим или нет.
- integer|null
$timeнеобязательный null - время в секундах, после которого ответ больше не должен считаться свежим
Возвращает
boolean|nullsharedMaxAge()source public deprecated
sharedMaxAge( integer|null $seconds = null )
Устанавливает директиву Cache-Control s-maxage.
Значение max-age — это количество секунд, по истечении которых ответ больше не должен рассматриваться как подходящий для извлечения из общего кэша (например, в прокси-сервере). Если функция вызвана без параметров, она вернёт текущее значение max-age, если оно существует.
Устаревшее
3.6.5 Используйте с withSharedMaxAge() вместо этого.Параметры
- integer|null
$secondsнеобязательно null - если null, метод вернёт текущее значение s-maxage
Возвращает
integer|nullstatusCode()source public deprecated
statusCode( integer|null $code = null )
Устанавливает HTTP-код состояния, который необходимо отправить, если $code равен null, возвращается текущий код.
Если код состояния равен 304 или 204, заголовок Content-Type будет очищен, так как эти коды ответа не имеют тела.
Устаревшее
3.4.0 ИспользуйтеgetStatusCode() и withStatus() вместо этого.Параметры
- integer|null
$codeнеобязательно null - код HTTP-состояния
Возвращает
integerТекущий код состояния
Исключения
InvalidArgumentExceptionПри достижении неизвестного кода состояния.
stop()source public deprecated
stop( integer|string $status = 0 )
Останавливает выполнение текущего скрипта. Оборачивает exit(), что упрощает тестирование.
Устаревшее
3.4.0 Будет удалено в 4.0.0Параметры
- integer|string
$statusнеобязательно 0 - См. https://secure.php.net/exit для значений
type()source public deprecated
type( string|null $contentType = null )
Устанавливает тип содержимого ответа. Это может быть расширение файла, которое будет внутренне сопоставлено с MIME-типом, или строка, представляющая MIME-тип. Если $contentType равен null, возвращается текущий тип содержимого. Если $contentType — ассоциативный массив, определения типов содержимого будут сохранены/заменены.
Установление типа содержимого
type('jpg'); Если вы попытаетесь установить тип на ответ со статусом 304 или 204, тип содержимого не вступит в силу, так как эти коды состояния не имеют типов содержимого.
Возвращение текущего типа содержимого
type();
Хранение определений типов содержимого
type(['keynote' => 'application/keynote', 'bat' => 'application/bat']);
Замена определения типа содержимого
type(['jpg' => 'text/plain']);
Устаревшее
3.5.5 Используйте getType() или withType() вместо этого.Параметры
- string|null
$contentTypeнеобязательно null - Ключ типа содержимого.
Возвращает
mixedТекущий тип содержимого или false, если предоставлен неверный тип содержимого.
validateFile()source protected
validateFile( string $path )
Проверяет, является ли путь к файлу допустимым телом ответа.
Параметры
- string
$path - Путь к файлу.
Возвращает
Cake\Filesystem\FileИсключения
Cake\Http\Exception\NotFoundExceptionvary()source public deprecated
vary( string|array|null $cacheVariances = null )
Устанавливает заголовок Vary для ответа; если передается массив, значения будут объединены в строку, разделенную запятыми. Если параметры не переданы, возвращается массив с текущим значением заголовка Vary.
Устаревшее
3.4.0 Используйте withVary() вместо этого.Параметры
- string|array|null
$cacheVariancesнеобязательно null Одна строка Vary или массив, содержащий список вариантов.
Возвращает
array|nullwithAddedLink()source public
withAddedLink( string $url , array $options = [] )
Создаёт новый ответ с установленным заголовком Link.
Примеры
$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"
Параметры
- string
$url - Ссылка заголовка url.
- array
$optionsнеобязательно [] - Параметры заголовка Link.
Возвращает
Cake\Http\ResponseС момента
3.6.0withCache()source public
withCache( string $since , string $time = '+1 day' )
Создаёт новый экземпляр с заголовками для включения кэширования клиента.
Параметры
- string
$since - допустимое время с момента последнего изменения текста ответа
- string
$timeнеобязательно '+1 day' - допустимое время истечения кэша
Возвращает
Cake\Http\ResponsewithCharset()source public
withCharset( string $charset )
Получить новый экземпляр с обновлённым кодированием символов.
Параметры
- string
$charset - Строка кодирования символов.
Возвращает
Cake\Http\ResponsewithCookie()source public
withCookie( string|Cake\Http\Cookie\Cookie $name , array|string $data = '' )
Создаёт новый ответ с установленным cookie.
Данные
-
value: Значение cookie -
expire: Время истечения срока действия cookie -
path: Путь, к которому применяется cookie -
domain: Домен cookie. -
secure: Является ли cookie https? -
httpOnly: Доступен ли cookie в клиенте?
Примеры
// set scalar value with defaults
$response = $response->withCookie('remember_me', 1);
// customize cookie attributes
$response = $response->withCookie('remember_me', ['path' => '/login']);
// add a cookie object
$response = $response->withCookie(new Cookie('remember_me', 1)); Параметры
- string|
Cake\Http\Cookie\Cookie$name - Имя cookie для установки или объект cookie
- array|string
$dataнеобязательно '' - Строковое значение или массив параметров cookie.
Возвращает
Cake\Http\ResponsewithDisabledCache()source public
withDisabledCache( )
Создаёт новый экземпляр с заголовками, которые сообщают клиенту о том, что ответ не должен кэшироваться.
Возвращает
Cake\Http\ResponsewithDownload()source public
withDownload( string $filename )
Создаёт новый экземпляр с установленным заголовком Content-Disposition.
Параметры
- string
$filename - Имя файла, как браузер загрузит ответ
Возвращает
Cake\Http\ResponsewithEtag()source public
withEtag( string $hash , boolean $weak = false )
Создаёт новый экземпляр с установленным заголовком Etag.
Etag — это сильный индикатор того, что клиент HTTP может кэшировать ответ. Плохой способ генерации Etag — создание хэша выходных данных ответа. Вместо этого создайте уникальный хэш уникальных компонентов, определяющих запрос, таких как время модификации, идентификатор ресурса и всё остальное, что вы считаете уникальным для ответа.
Второй параметр используется для информирования клиентов о том, что содержимое изменилось, но семантически оно эквивалентно существующим кэшированным значениям. Рассмотрим страницу с счётчиком посещений; два разных просмотра страницы эквивалентны, но различаются на несколько байтов. Это позволяет клиенту решить, использовать ли кэшированные данные.
Параметры
- string
$hash - Уникальный хэш, определяющий этот ответ
- boolean
$weakнеобязательно false Указывает, является ли ответ семантически таким же, как и другие с тем же хэшем или нет. По умолчанию — false
Возвращает
Cake\Http\ResponsewithExpiredCookie()source public
withExpiredCookie( string|Cake\Http\Cookie\CookieInterface $name , array $options = [] )
Создать новый ответ с установленным истекшим куки.
Параметры
-
path: Путь, к которому относится куки -
domain: Домен, для которого предназначен куки. -
secure: Является ли куки HTTPS? -
httpOnly: Доступен ли куки в клиенте?
Примеры
// set scalar value with defaults
$response = $response->withExpiredCookie('remember_me');
// customize cookie attributes
$response = $response->withExpiredCookie('remember_me', ['path' => '/login']);
// add a cookie object
$response = $response->withExpiredCookie(new Cookie('remember_me')); Параметры
- string|
Cake\Http\Cookie\CookieInterface$name - Имя куки для истечения или объект куки
- array
$optionsнеобязательно [] - Массив параметров куки.
Возвращает
Cake\Http\ResponsewithExpires()source public
withExpires( string|DateTimeInterface $time )
Создать новый экземпляр с установленным заголовком Expires.
Примеры:
// Will Expire the response cache now
$response->withExpires('now')
// Will set the expiration in next 24 hours
$response->withExpires(new DateTime('+1 day')) Параметры
- string|DateTimeInterface
$time - Действительная строка времени или экземпляр \DateTime.
Возвращает
Cake\Http\ResponsewithFile()source public
withFile( string $path , array $options = [] )
Создать новый экземпляр, основанный на файле.
Этот метод дополнит как тело, так и ряд связанных заголовков.
Если $_SERVER['HTTP_RANGE'] установлено, будет возвращена часть файла, а не весь файл.
Ключи параметров
- name: Альтернативное имя для загрузки
- download: Если
trueустанавливает заголовок загрузки и принуждает к загрузке файла вместо отображения встроеным.
Параметры
- string
$path Путь к файлу. Если путь не является абсолютным путем, разрешающим файл,
APPбудет добавлен к пути (это поведение устарело).- array
$optionsнеобязательно [] - Параметры, см. выше.
Возвращает
Cake\Http\ResponseВозможные исключения
Cake\Http\Exception\NotFoundExceptionwithLength()source public
withLength( integer|string $bytes )
Создать новый ответ с установленным заголовком Content-Length.
Параметры
- integer|string
$bytes - Количество байтов
Возвращает
Cake\Http\ResponsewithLocation()source public
withLocation( string $url )
Возврат экземпляра с обновленным заголовком расположения.
Если текущий код состояния равен 200, он будет заменён на 302.
Параметры
- string
$url - Адрес перенаправления.
Возвращает
Cake\Http\ResponseНовый ответ с установленным заголовком Location.
withMaxAge()source public
withMaxAge( integer $seconds )
Создать экземпляр с установленным директивой Cache-Control max-age.
max-age — это количество секунд, после которого ответ больше не должен рассматриваться как подходящий для извлечения из кэша на клиенте.
Параметры
- integer
$seconds - Количество секунд, в течение которых кэшированный ответ может считаться действительным
Возвращает
Cake\Http\ResponsewithModified()source public
withModified( string|DateTimeInterface $time )
Создать новый экземпляр с установленным заголовком 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')) Параметры
- string|DateTimeInterface
$time - Действительная строка времени или экземпляр \DateTimeInterface.
Возвращает
Cake\Http\ResponsewithMustRevalidate()source public
withMustRevalidate( boolean $enable )
Создать экземпляр с установленной директивой Cache-Control must-revalidate.
Устанавливает директиву Cache-Control must-revalidate. must-revalidate указывает, что ответ не должен обслуживаться устаревшим кэшем в любом случае без предварительной проверки с источником.
Параметры
- boolean
$enable - Если true, устанавливает или отменяет директиву.
Возвращает
Cake\Http\ResponsewithNotModified()source public
withNotModified( )
Создать новый экземпляр как "не изменённый".
Это удалит любое содержимое тела, установит код состояния на "304" и удалит заголовки, описывающие тело ответа.
Возвращает
Cake\Http\ResponsewithSharable()source public
withSharable( boolean $public , integer|null $time = null )
Создать новый экземпляр с установленной директивой Cache-Control public/private.
Параметры
- boolean
$public Если true, заголовок Cache-Control будет установлен как public, если false — ответ будет установлен как private.
- integer|null
$timeнеобязательно null - Время в секундах, после которого ответ больше не должен считаться актуальным.
Возвращает
Cake\Http\ResponsewithSharedMaxAge()source public
withSharedMaxAge( integer $seconds )
Создать новый экземпляр с установленной директивой Cache-Control s-maxage.
max-age — это количество секунд, после которого ответ больше не должен рассматриваться как подходящий для извлечения из кэша общего использования (например, в прокси-сервере).
Параметры
- integer
$seconds - Количество секунд для shared max-age
Возвращает
Cake\Http\ResponsewithStatus()source public
withStatus( integer $code , string $reasonPhrase = '' )
Возвратить экземпляр со указанным кодом состояния и, необязательно, фразой причины.
Если фраза причины не указана, реализации могут использовать по умолчанию рекомендованные в RFC 7231 или IANA фразы причины для кода состояния ответа.
Этот метод должен быть реализован таким образом, чтобы сохранить неизменность сообщения, и должен возвращать экземпляр с обновлённым кодом состояния и фразой причины.
Если код состояния 304 или 204, существующий заголовок Content-Type будет очищен, так как эти коды ответа не имеют тела.
Параметры
- integer
$code - Трехзначный целочисленный код результата для установки.
- string
$reasonPhraseнеобязательно '' Фраза причины, используемая с предоставленным кодом состояния; если она не указана, реализации могут использовать значения по умолчанию, как предложено в спецификации HTTP.
Возвращает
Cake\Http\ResponseВозможные исключения
InvalidArgumentExceptionДля недействительных аргументов кода состояния.
Ссылка
https://tools.ietf.org/html/rfc7231#section-6https://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml
withStringBody()source public
withStringBody( string $string )
Метод для удобства установки строки в тело ответа
Параметры
- string
$string - Строка, которая должна быть отправлена
Возвращает
Cake\Http\ResponsewithType()source public
withType( string $contentType )
Получить обновлённый ответ с установленным типом содержимого.
Если вы попытаетесь установить тип на ответ со статусом 304 или 204, тип содержимого не будет действовать, так как эти коды статуса не имеют типов содержимого.
Параметры
- string
$contentType - Расширение файла, которое будет сопоставлено с типом MIME, или конкретный тип MIME.
Возвращает
Cake\Http\ResponsewithVary()source public
withVary( string|array $cacheVariances )
Создать новый экземпляр с установленным заголовком Vary.
Если передается массив, значения будут объединены в строку, разделенную запятыми. Если параметры не переданы, возвращается массив с текущим значением заголовка Vary.
Параметры
- строка|массив
$cacheVariances Одна строка Vary или массив, содержащий список вариантов.
Возвращаемое значение
Cake\Http\Response
© 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/3.7/class-Cake.TestSuite.Stub.Response.html