Spec-Zone.ru › CakePHP 3.2

Класс Response

Реализует методы для HTTP-ответов.

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

Получение значений заголовков

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

$val = $response->header('content-type');

Прочитает заголовок Content-Type. Вы можете получить все установленные заголовки, используя:

$response->header();

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

$val = $response->headers['Content-Type'];

Получение тела ответа

Вы можете получить доступ к телу ответа, используя:

$content = $response->body();

Вы также можете использовать доступ к объекту:

$content = $response->body;

Если тело ответа находится в формате XML или JSON, вы можете использовать специальные методы доступа, специфичные для типа содержимого, для чтения декодированных данных. Данные JSON будут возвращены в виде массивов, а данные XML — в виде узлов SimpleXML:

// Get as xml
$content = $response->xml
// Get as json
$content = $response->json

Если ответ не может быть декодирован, будет возвращено значение null.

Проверка кода состояния

Вы можете получить доступ к коду состояния ответа, используя:

$content = $response->statusCode();

Вы также можете использовать доступ к объекту:

$content = $response->code;
Cake\Network\Http\Message
Extended by Cake\Network\Http\Response
Пространство имен: Cake\Network\Http
Расположение: Network/Http/Response.php

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

  • METHOD_DELETE, METHOD_GET, METHOD_HEAD, METHOD_OPTIONS, METHOD_PATCH, METHOD_POST, METHOD_PUT, METHOD_TRACE, STATUS_ACCEPTED, STATUS_CREATED, STATUS_FOUND, STATUS_MOVED_PERMANENTLY, STATUS_OK, STATUS_SEE_OTHER, STATUS_TEMPORARY_REDIRECT

Резюме свойств

  • $_body protected
    string
    Тело ответа
  • $_code protected
    integer
    Код состояния ответа.
  • $_exposedProperties protected
    array
    Карта имен публичных свойств для __get()
  • $_json protected
    array
    Кэшированные декодированные данные JSON.
  • $_xml protected
    SimpleXMLElement
    Кэшированные декодированные данные XML.

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

  • _cookies, _headers, _version

Резюме методов

  • __construct() public
    Конструктор
  • __get() public
    Чтение значений как свойств.
  • __isset() public
    Проверка isset/empty с синтаксисом ->.
  • _decodeGzipBody() protected
    Распаковка gzip-ответа.
  • _getJson() protected
    Получение тела ответа в виде декодированных данных JSON.
  • _getXml() protected
    Получение тела ответа в виде декодированных данных XML.
  • _parseCookie() protected
    Разбор заголовка cookie в данные.
  • _parseHeaders() protected
    Разбор заголовков при необходимости.
  • body() public
    Получение тела ответа.
  • cookie() public
    Чтение значений cookie (одного или нескольких).
  • encoding() public
    Получение кодировки, если она была установлена.
  • header() public
    Чтение значений заголовка (одного или нескольких).
  • isOk() public
    Проверка, был ли ответ OK.
  • isRedirect() public
    Проверка, был ли ответ перенаправлением.
  • statusCode() public
    Получение кода состояния ответа.

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

__construct()source public

__construct( array $headers [] , string $body '' )

Конструктор

Параметры

массив $headers необязательно []
Необработанные заголовки.
строка $body необязательно ''
Тело ответа.

__get()source public

__get( string $name )

Чтение значений как свойств.

Параметры

строка $name
Имя свойства.

Возвращает

mixed

__isset()source public

__isset( string $name )

Проверка isset/empty с синтаксисом ->.

Параметры

строка $name
Имя свойства.

Возвращает

boolean

_decodeGzipBody()source protected

_decodeGzipBody( string $body )

Распаковка gzip-ответа.

Ищет gzip-подписи и, если gzinflate() существует, тело будет распаковано.

Параметры

строка $body
Тело, закодированное в gzip.

Возвращает

строка

Выбрасывает

RuntimeException
При попытке декодировать gzip-содержимое без gzinflate.

_getJson()source protected

_getJson( )

Получение тела ответа в виде декодированных данных JSON.

Возвращает

mixed

_getXml()source protected

_getXml( )

Получение тела ответа в виде декодированных данных XML.

Возвращает

null|SimpleXMLElement

_parseCookie()source protected

_parseCookie( string $value )

Разбор заголовка cookie в данные.

Параметры

строка $value
Значение cookie для разбора.

_parseHeaders()source protected

_parseHeaders( array $headers )

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

  • Декодирует код состояния.
  • Разбирает и нормализует имена и значения заголовков.

Параметры

массив $headers
Заголовки для разбора.

body()source public

body( callable|null $parser null )

Получение тела ответа.

Передавая вызываемый объект $parser, вы можете получить декодированное содержимое ответа обратно.

Например, чтобы получить данные json как объект:

$body = $response->body('json_decode');

Параметры

вызываемый объект|null $parser необязательно null

Обратный вызов для декодирования тела ответа.

Возвращает

mixed
Тело ответа.

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

Cake\Network\Http\Message::body()
END_OF_DOCUMENT_MARKER

cookie()source public

cookie( string|null $name null , boolean $all false )

Чтение значений одного или нескольких куки.

Параметры

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

Имя куки, которое вы хотите получить. Оставьте null, чтобы получить все куки.

boolean $all необязательный false

Получить все части куки. Если false, возвращается только значение.

Возвращает

mixed

encoding()source public

encoding( )

Получение кодировки, если она была установлена.

Возвращает

string|null

header()source public

header( string|null $name null )

Чтение значений одного или нескольких заголовков.

Параметры

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

Имя заголовка, который вы хотите получить. Оставьте null, чтобы получить все заголовки.

Возвращает

mixed

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


isOk()source public

isOk( )

Проверка, был ли ответ OK

Возвращает

boolean

isRedirect()source public

isRedirect( )

Проверка, был ли ответ переадресацией.

Возвращает

boolean

statusCode()source public

statusCode( )

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

Возвращает

integer

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

_normalizeHeader()source protected

_normalizeHeader( string $name )

Нормализация имён заголовков в формате CamelCase.

Параметры

string $name
Имя заголовка для нормализации.

Возвращает

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

cookies()source public

cookies( )

Получение всех куки.

Возвращает

array

headers()source public

headers( )

Получение всех заголовков.

Возвращает

array

version()source public

version( )

Получение используемой версии HTTP.

Возвращает

string

Подробности свойств

$_bodysource

protected string

Тело ответа

$_codesource

protected integer

Код состояния ответа.

$_exposedPropertiessource

protected array

Карта публичных => имён свойств для __get()

[
    'cookies' => '_cookies',
    'headers' => '_headers',
    'body' => '_body',
    'code' => '_code',
    'json' => '_getJson',
    'xml' => '_getXml'
]

$_jsonsource

protected array

Кэшированные декодированные данные JSON.

$_xmlsource

protected SimpleXMLElement

Кэшированные декодированные данные XML.

© 2005–2016 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.
http://api.cakephp.org/3.2/class-Cake.Network.Http.Response.html

Spec-Zone.ru

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