Spec-Zone.ru › CakePHP 3.3

Класс Response

Класс ответа, предназначенный для тестовых случаев.

Cake\Network\Response
Расширяется Cake\TestSuite\Stub\Response
Пространство имён: Cake\TestSuite\Stub
Расположение: TestSuite/Stub/Response.php

Наследованные свойства

  • _body, _cacheDirectives, _charset, _contentType, _cookies, _file, _fileRange, _headers, _mimeTypes, _protocol, _status, _statusCodes

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

  • send() public
    Имитирует метод send() для того, чтобы не отправлять заголовки и вывод.

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

send()source public

send( )

Имитирует метод send() для того, чтобы не отправлять заголовки и вывод.

Переопределяет

Cake\Network\Response::send()

Методы, унаследованные от Cake\Network\Response

__construct()source public

__construct( array $options [] )

Конструктор

Параметры

массив $options необязательно []

список параметров для настройки ответа. Возможные значения: - body: текст ответа, который должен быть отправлен клиенту - statusCodes: дополнительные допустимые коды ответов - status: код HTTP-статуса для ответа - type: полное значение MIME-типа или расширение, сопоставленное в этом классе - charset: кодировка символов для тела ответа

__debugInfo()source public

__debugInfo( )

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

Возвращает

массив

__toString()source public

__toString( )

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

Возвращает

строка

_clearBuffer()source protected

_clearBuffer( )

Очищает содержимое верхнего буфера вывода и отбрасывает его

Устарело

3.2.4 Этот метод больше не нужен

Возвращает

логическое значение

_fileRange()source protected

_fileRange( Cake\Filesystem\File $file , string $httpRange )

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

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

Параметры

Cake\Filesystem\File $file
Файл, для которого устанавливается диапазон.
строка $httpRange
Диапазон для использования.

_flushBuffer()source protected

_flushBuffer( )

Очищает содержимое буфера вывода.

Устарело

3.2.4 Этот метод больше не нужен

_getUTCDate()source protected

_getUTCDate( string|integer|DateTime|null $time null )

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

Параметры

строка|целое число|DateTime|null $time необязательно null
Действительная строка времени или экземпляр DateTime.

Возвращает

DateTime

_isActive()source protected

_isActive( )

Возвращает true, если соединение по-прежнему активно.

Возвращает

логическое значение

_sendContent()source protected

_sendContent( string|callable $content )

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

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

Параметры

строка|вызываемый объект $content

Строка для отправки в качестве тела ответа или вызываемый объект, который возвращает/выводит содержимое.

_sendFile()source protected

_sendFile( Cake\Filesystem\File $file , array $range )

Читает файл и выводит содержимое клиенту.

Параметры

Cake\Filesystem\File $file
Объект файла
массив $range
Диапазон для чтения из файла.

Возвращает

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

_sendHeader()source protected

_sendHeader( string $name , string|null $value null )

Отправляет заголовок клиенту.

Параметры

строка $name
имя заголовка
строка|null $value необязательно null
значение заголовка

_setCacheControl()source protected

_setCacheControl( )

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

_setContent()source protected

_setContent( )

Устанавливает тело ответа в пустую строку, если код статуса равен 204 или 304

_setContentType()source protected

_setContentType( )

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

_setCookies()source protected

_setCookies( )

Устанавливает куки, добавленные с помощью Cake\Network\Response::cookie(), перед отправкой любого другого вывода клиенту. Куки будут установлены в том порядке, в котором они были установлены.

body()source public

body( string|callable|null $content null )

Буферизует сообщение ответа для отправки. Если $content равен null, возвращается текущий буфер.

Параметры

строка|вызываемый объект|null $content необязательно null
строка или вызываемый объект, сообщение для отправки

Возвращает

строка
Текущий буфер сообщений, если параметр $content передан как null

cache()source public

cache( string $since , string $time '+1 day' )

Устанавливает правильные заголовки для указания клиенту о кэшировании ответа.

Параметры

строка $since
действительное время с момента последнего изменения текста ответа
строка $time необязательно '+1 day'
действительное время истечения срока действия кэша

charset()source public

charset( string|null $charset null )

Устанавливает кодировку символов ответа. Если $charset равен null, возвращается текущая кодировка символов.

Параметры

строка|null $charset необязательно null
Строка кодировки символов.

Возвращает

строка
Текущая кодировка символов
END_OF_DOCUMENT_MARKER

checkNotModified()source public

checkNotModified( Cake\Network\Request $request )

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

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

Параметры

Cake\Network\Request $request
Объект запроса

Возвращает

boolean
Был ли ответ помечен как не изменённый.

compress()source public

compress( )

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

Возвращает

boolean
false, если клиент не принимает сжатые ответы или нет доступного обработчика, иначе true

cookie()source public

cookie( array|null $options null )

Получение/установка настроек cookie

Этот метод действует как устанавливающий/получающий, в зависимости от типа аргумента. Если метод вызван без аргументов, он возвращает все конфигурации.

Если метод вызван со строковым аргументом, он возвращает либо заданную конфигурацию, если она установлена, или null, если она не установлена.

Если метод вызван с массивом в качестве аргумента, он установит конфигурацию cookie в контейнер cookie.

### Опции (при установке конфигурации) - name: Имя cookie - value: Значение cookie - expire: Время истечения срока действия cookie в - path: Путь, на который распространяется cookie - domain: Домен, для которого предназначена cookie. - secure: Используется ли HTTPS для cookie? - httpOnly: Доступен ли cookie в клиенте?

Примеры

Получение всех cookie

$this->cookie()

Получение определённой конфигурации cookie

$this->cookie('MyCookie')

Установка конфигурации cookie

$this->cookie((array) $options)

Параметры

array|null $options необязательно null

Либо null для получения всех cookie, строка для определённого cookie или массив для установки cookie.

Возвращает

mixed

cors()source public

cors( Cake\Network\Request $request , string|array $allowedDomains [] , string|array $allowedMethods [] , string|array $allowedHeaders [] )

Настройка доступа к источнику и методам при кросс-доменных запросах

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

Полный URI

cors($request, 'http://www.cakephp.org');

URI с подстановкой

cors($request, 'http://*.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\Network\Request $request
Объект запроса
string|array $allowedDomains необязательно []
Список разрешённых доменов, см. описание метода для получения более подробной информации
string|array $allowedMethods необязательно []
Список разрешённых HTTP-методов
string|array $allowedHeaders необязательно []
Список разрешённых HTTP-заголовков

Возвращает

Cake\Network\CorsBuilder

Объект билдера, предоставляющий удобный интерфейс для определения дополнительных заголовков CORS.


disableCache()source public

disableCache( )

Устанавливает необходимые заголовки, чтобы запретить кэширование ответа клиентом

download()source public

download( string $filename )

Устанавливает необходимые заголовки, чтобы браузер загрузил ответ в виде файла.

Параметры

string $filename
Имя файла, которое браузер будет использовать для загрузки ответа

etag()source public

etag( string|null $hash null , boolean $weak false )

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

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

Если параметры не переданы, возвращается текущий заголовок Etag.

Параметры

string|null $hash необязательно null
Уникальный хэш, идентифицирующий этот ответ
boolean $weak необязательно false

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

Возвращает

string|null

expires()source public

expires( string|DateTime|null $time null )

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

Примеры:

$response->expires('now') Установит истечение кэша ответа сейчас $response->expires(new DateTime('+1 day')) Установит истечение кэша через 24 часа $response->expires() Вернёт текущее значение заголовка истечения срока действия

Параметры

string|DateTime|null $time необязательно null
Действительная строка времени или экземпляр DateTime.

Возвращает

string|null

file()source public

file( string $path , array $options [] )

Настройка отображения или загрузки заданного файла.

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

Ключи опций

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

Параметры

string $path

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

array $options необязательно []
Опции см. выше.

Исключения

Cake\Network\Exception\NotFoundException

getFile()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 не сопоставлен

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');

Параметры

string|array|null $header необязательно null

Массив строк заголовков или одна строка заголовка - ассоциативный массив "имя заголовка" => "значение заголовка" также принимается - массив строк заголовков также принимается

string|array|null $value необязательно null
Значение заголовка(ов)

Возвращает

array
Список заголовков для отправки

httpCodes()source public

httpCodes( integer|array|null $code null )

Запрашивает и устанавливает допустимые коды и сообщения HTTP ответа.

Параметры

целое число|массив|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

Возвращает

смешанный тип

Ассоциативный массив кодов HTTP в качестве ключей и строк сообщений в качестве значений, или null, если заданный $code не существует.


Вызывает исключение

InvalidArgumentException
Если попытка добавить недопустимый код состояния

length()source public

length( integer|null $bytes null )

Устанавливает заголовок Content-Length для ответа. Если вызов без аргументов, возвращает последний установленный Content-Length.

Параметры

целое число|null $bytes необязательный null
Количество байтов

Возвращает

целое число|null

location()source public

location( null|string $url null )

Доступ к заголовку location.

Получение/установка значения заголовка Location.

Параметры

null|строка $url необязательный null
Либо null для получения текущего местоположения, либо строка для установки.

Возвращает

строка|null

При установке location возвращается null. При чтении location возвращается строка текущего значения заголовка location (если есть).


mapType()source public

mapType( string|array $ctype )

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

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

Параметры

строка|массив $ctype
Тип контента для сопоставления, или массив типов.

Возвращает

строка|массив|null
Псевдонимы для предоставленных типов.

maxAge()source public

maxAge( integer|null $seconds null )

Устанавливает директиву Cache-Control max-age. max-age — количество секунд, после которого ответ больше не должен рассматриваться как хороший кандидат для получения из кэша клиента. Если вызывается без параметров, эта функция возвращает текущее значение max-age, если таковое имеется.

Параметры

целое число|null $seconds необязательный null
если null, метод вернёт текущее значение max-age

Возвращает

целое число|null

modified()source public

modified( string|DateTime|null $time null )

Устанавливает заголовок Last-Modified для ответа, используя время модификации. Если вызывается без параметров, возвращает текущее значение Last-Modified.

Примеры:

$response->modified('now') Установит Last-Modified на текущее время $response->modified(new DateTime('+1 day')) Установит дату модификации в прошлом 24 часов $response->modified() Вернёт текущее значение заголовка Last-Modified

Параметры

строка|DateTime|null $time необязательный null
Действительная строка времени или экземпляр DateTime.

Возвращает

строка|null

mustRevalidate()source public

mustRevalidate( boolean|null $enable null )

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

Параметры

boolean|null $enable необязательный null

если null, метод вернёт текущее значение must-revalidate. Если boolean, установит или сбросит директиву.

Возвращает

boolean

notModified()source public

notModified( )

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

outputCompressed()source public

outputCompressed( )

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

Возвращает

boolean

protocol()source public

protocol( string|null $protocol null )

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

Параметры

строка|null $protocol необязательный null
Протокол, который будет использоваться для отправки ответа.

Возвращает

строка
Текущий установленный протокол

sendHeaders()source public

sendHeaders( )

Отправляет HTTP заголовки и куки.

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. Если значение не указано, вернёт, является ли ответ разделяемым.

целое число|null $time необязательный null
время в секундах, после которого ответ больше не должен считаться свежим

Возвращает

boolean|null

sharedMaxAge()source public

sharedMaxAge( integer|null $seconds null )

Устанавливает директиву Cache-Control s-maxage. s-maxage — количество секунд, после которого ответ больше не должен рассматриваться как хороший кандидат для получения из разделяемого кэша (например, на прокси-сервере). Если вызывается без параметров, эта функция вернёт текущее значение max-age, если таковое имеется.

Параметры

целое число|null $seconds необязательный null
если null, метод вернёт текущее значение s-maxage

Возвращает

целое число|null

statusCode()source public

statusCode( integer|null $code null )

Устанавливает код HTTP состояния, которое будет отправлено. Если $code равен null, возвращается текущий код.

Параметры

целое число|null $code необязательный null
код HTTP состояния

Возвращает

целое число
Текущий код состояния

Вызывает исключение

InvalidArgumentException
Если достигнут неизвестный код состояния.

stop()source public

stop( integer|string $status 0 )

Останавливает выполнение текущего скрипта. Оборачивает exit(), что упрощает тестирование.

Параметры

целое число|строка $status необязательный 0
См. http://php.net/exit для значений
END_OF_DOCUMENT_MARKER

type()source public

type( string|null $contentType null )

Устанавливает тип содержимого ответа. Может быть расширением файла, которое будет отображено внутри как MIME-тип, или строкой, представляющей MIME-тип. Если $contentType равен null, возвращается текущий тип содержимого. Если $contentType является ассоциативным массивом, определения типов содержимого будут сохранены/заменены.

Установка типа содержимого

type('jpg');

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

type();

Сохранение определений типов содержимого

type(['keynote' => 'application/keynote', 'bat' => 'application/bat']);

Замена определения типа содержимого

type(['jpg' => 'text/plain']);

Параметры

строка|null $contentType необязательно null
Ключ типа содержимого.

Возвращает

смешанный
Текущий тип содержимого или false, если предоставлен неверный тип содержимого

vary()source public

vary( string|array|null $cacheVariances null )

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

Параметры

строка|массив|null $cacheVariances необязательно null

Одна строка Vary или массив, содержащий список значений для варьирования.

Возвращает

массив|null

© 2005–2017 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.3/class-Cake.TestSuite.Stub.Response.html

Spec-Zone.ru

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