STATUS_OK
STATUS_OK = 200 : integer
HTTP 200 code
Implements methods for HTTP responses.
All of the following examples assume that $response
is an
instance of this class.
Header names are case-insensitive, but normalized to Title-Case when the response is parsed.
$val = $response->getHeaderLine('content-type');
Will read the Content-Type header. You can get all set headers using:
$response->getHeaders();
You can access the response body stream using:
$content = $response->getBody();
You can get the body string using:
$content = $response->getStringBody();
If your response body is in XML or JSON you can use special content type specific accessors to read the decoded data. JSON data will be returned as arrays, while XML data will be returned as SimpleXML nodes:
// Get as xml
$content = $response->getXml()
// Get as json
$content = $response->getJson()
If the response cannot be decoded, null will be returned.
You can access the response status code using:
$content = $response->getStatusCode();
$cookies : \Cake\Http\Cookie\CookieCollection
Cookie Collection instance
$stream : \Psr\Http\Message\StreamInterface
withProtocolVersion(string $version) : static
Return an instance with the specified HTTP protocol version.
The version string MUST contain only the HTTP version number (e.g., "1.1", "1.0").
This method MUST be implemented in such a way as to retain the immutability of the message, and MUST return an instance that has the new protocol version.
string | $version | HTTP protocol version |
getHeaders() : array
Retrieves all message headers.
The keys represent the header name as it will be sent over the wire, and each value is an array of strings associated with the header.
// Represent the headers as a string
foreach ($message->getHeaders() as $name => $values) {
echo $name . ": " . implode(", ", $values);
}
// Emit headers iteratively:
foreach ($message->getHeaders() as $name => $values) {
foreach ($values as $value) {
header(sprintf('%s: %s', $name, $value), false);
}
}
Returns an associative array of the message's headers. Each key MUST be a header name, and each value MUST be an array of strings.
hasHeader(string $header) : boolean
Checks if a header exists by the given case-insensitive name.
string | $header | Case-insensitive header name. |
Returns true if any header names match the given header name using a case-insensitive string comparison. Returns false if no matching header name is found in the message.
getHeader(string $header) : array<mixed,string>
Retrieves a message header value by the given case-insensitive name.
This method returns an array of all the header values of the given case-insensitive header name.
If the header does not appear in the message, this method MUST return an empty array.
string | $header | Case-insensitive header field name. |
An array of string values as provided for the given header. If the header does not appear in the message, this method MUST return an empty array.
getHeaderLine(string $name) : string
Retrieves a comma-separated string of the values for a single header.
This method returns all of the header values of the given case-insensitive header name as a string concatenated together using a comma.
NOTE: Not all header values may be appropriately represented using comma concatenation. For such headers, use getHeader() instead and supply your own delimiter when concatenating.
If the header does not appear in the message, this method MUST return an empty string.
string | $name | Case-insensitive header field name. |
A string of values as provided for the given header concatenated together using a comma. If the header does not appear in the message, this method MUST return an empty string.
withHeader(string $header, string|array<mixed,string> $value) : static
Return an instance with the provided header, replacing any existing values of any headers with the same case-insensitive name.
While header names are case-insensitive, the casing of the header will be preserved by this function, and returned from getHeaders().
This method MUST be implemented in such a way as to retain the immutability of the message, and MUST return an instance that has the new and/or updated header and value.
string | $header | Case-insensitive header field name. |
string|array<mixed,string> | $value | Header value(s). |
for invalid header names or values.
withAddedHeader(string $header, string|array<mixed,string> $value) : static
Return an instance with the specified header appended with the given value.
Existing values for the specified header will be maintained. The new value(s) will be appended to the existing list. If the header did not exist previously, it will be added.
This method MUST be implemented in such a way as to retain the immutability of the message, and MUST return an instance that has the new header and/or value.
string | $header | Case-insensitive header field name to add. |
string|array<mixed,string> | $value | Header value(s). |
for invalid header names or values.
withoutHeader(string $header) : static
Return an instance without the specified header.
Header resolution MUST be done without case-sensitivity.
This method MUST be implemented in such a way as to retain the immutability of the message, and MUST return an instance that removes the named header.
string | $header | Case-insensitive header field name to remove. |
getBody() : \Psr\Http\Message\StreamInterface
Gets the body of the message.
Returns the body as a stream.
withBody(\Psr\Http\Message\StreamInterface $body) : static
Return an instance with the specified message body.
The body MUST be a StreamInterface object.
This method MUST be implemented in such a way as to retain the immutability of the message, and MUST return a new instance that has the new body stream.
\Psr\Http\Message\StreamInterface | $body | Body. |
When the body is not valid.
None found |
body(callable|null $parser = null) : mixed
Get the response body.
By passing in a $parser callable, you can get the decoded response content back.
For example to get the json data as an object:
$body = $response->body('json_decode');
callable|null | $parser | The callback to use to decode the response body. |
The response body.
None found |
__construct(array $headers = array(), string $body = '')
Constructor
array | $headers | Unparsed headers. |
string | $body | The response body. |
None found |
None found |
isRedirect() : boolean
Check if the response had a redirect status code.
None found |
None found |
getStatusCode() : integer
Gets the response status code.
The status code is a 3-digit integer result code of the server's attempt to understand and satisfy the request.
The status code.
None found |
withStatus(integer $code, string $reasonPhrase = '') : $this
Return an instance with the specified status code and, optionally, reason phrase.
If no reason phrase is specified, implementations MAY choose to default to the RFC 7231 or IANA recommended reason phrase for the response's status code.
This method MUST be implemented in such a way as to retain the immutability of the message, and MUST return an instance that has the updated status and reason phrase.
integer | $code | The status code to set. |
string | $reasonPhrase | The status reason phrase. |
A copy of the current object with an updated status code.
None found |
getReasonPhrase() : string
Gets the response reason phrase associated with the status code.
Because a reason phrase is not a required element in a response status line, the reason phrase value MAY be null. Implementations MAY choose to return the default RFC 7231 recommended reason phrase (or those listed in the IANA HTTP Status Code Registry) for the response's status code.
The current reason phrase.
None found |
None found |
None found |
header(string|null $name = null) : mixed
Read single/multiple header value(s) out.
string|null | $name | The name of the header you want. Leave null to get all headers. |
Null when the header doesn't exist. An array will be returned when getting all headers or when getting a header that had multiple values set. Otherwise a string will be returned.
None found |
cookie(string|null $name = null, boolean $all = false) : mixed
Read single/multiple cookie values out.
Note This method will only provide access to cookies that were added as part of the constructor. If cookies are added post construction they will not be accessible via this method.
string|null | $name | The name of the cookie you want. Leave null to get all cookies. |
boolean | $all | Get all parts of the cookie. When false only the value will be returned. |
None found |
None found |
getCookieCollection() : \Cake\Http\Cookie\CookieCollection
Get the cookie collection from this response.
This method exposes the response's CookieCollection instance allowing you to interact with cookie objects directly.
None found |
getCookie(string $name) : string|array|null
Get the value of a single cookie.
string | $name | The name of the cookie value. |
Either the cookie's value or null when the cookie is undefined.
None found |
getCookieData(string $name) : array|null
Get the full data for a single cookie.
string | $name | The name of the cookie value. |
Either the cookie's data or null when the cookie is undefined.
None found |
None found |
None found |
None found |
getXml() : null|\SimpleXMLElement
Get the response body as XML decoded data.
None found |
__get(string $name) : mixed
Read values as properties.
string | $name | Property name. |
None found |
__isset(string $name) : boolean
isset/empty test with -> syntax.
string | $name | Property name. |
None found |
_decodeGzipBody(string $body) : string
Uncompress a gzip response.
Looks for gzip signatures, and if gzinflate() exists, the body will be decompressed.
string | $body | Gzip encoded body. |
When attempting to decode gzip content without gzinflate.
None found |
_parseHeaders(array $headers) : void
Parses headers if necessary.
array | $headers | Headers to parse. |
None found |
convertCookieToArray(\Cake\Http\Cookie\CookieInterface $cookie) : array
Convert the cookie into an array of its properties.
This method is compatible with older client code that expects date strings instead of timestamps.
\Cake\Http\Cookie\CookieInterface | $cookie | Cookie object. |
None found |
buildCookieCollection() : void
Lazily build the CookieCollection and cookie objects from the response header
None found |
_getCookies() : array
Property accessor for `$this->cookies`
Array of Cookie data.
None found |
None found |
_getXml() : null|\SimpleXMLElement
Get the response body as XML decoded data.
None found |
None found |
None found |
None found |
setHeaders(array $originalHeaders)
Filter a set of headers to ensure they are in the correct internal format.
Used by message constructors to allow setting all initial headers at once.
array | $originalHeaders | Headers to filter. |
None found |
validateProtocolVersion(string $version)
Validate the HTTP protocol version
string | $version |
on invalid HTTP protocol version
None found |
filterHeaderValue(mixed $values) : array<mixed,string>
mixed | $values |
None found |
assertHeader(string $name)
Ensure header name and values are valid.
string | $name |
None found |