137 lines
3.8 KiB
PHP
137 lines
3.8 KiB
PHP
<?php
|
|
namespace GuzzleHttp\Message;
|
|
|
|
use GuzzleHttp\Stream\StreamInterface;
|
|
|
|
/**
|
|
* Request and response message interface
|
|
*/
|
|
interface MessageInterface
|
|
{
|
|
/**
|
|
* Get a string representation of the message
|
|
*
|
|
* @return string
|
|
*/
|
|
public function __toString();
|
|
|
|
/**
|
|
* Get the HTTP protocol version of the message
|
|
*
|
|
* @return string
|
|
*/
|
|
public function getProtocolVersion();
|
|
|
|
/**
|
|
* Sets the body of the message.
|
|
*
|
|
* The body MUST be a StreamInterface object. Setting the body to null MUST
|
|
* remove the existing body.
|
|
*
|
|
* @param StreamInterface|null $body Body.
|
|
*/
|
|
public function setBody(StreamInterface $body = null);
|
|
|
|
/**
|
|
* Get the body of the message
|
|
*
|
|
* @return StreamInterface|null
|
|
*/
|
|
public function getBody();
|
|
|
|
/**
|
|
* Gets 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);
|
|
* }
|
|
*
|
|
* @return array Returns an associative array of the message's headers.
|
|
*/
|
|
public function getHeaders();
|
|
|
|
/**
|
|
* Retrieve a header by the given case-insensitive name.
|
|
*
|
|
* @param string $header Case-insensitive header name.
|
|
*
|
|
* @return string
|
|
*/
|
|
public function getHeader($header);
|
|
|
|
/**
|
|
* Retrieves a header by the given case-insensitive name as an array of strings.
|
|
*
|
|
* @param string $header Case-insensitive header name.
|
|
*
|
|
* @return string[]
|
|
*/
|
|
public function getHeaderAsArray($header);
|
|
|
|
/**
|
|
* Checks if a header exists by the given case-insensitive name.
|
|
*
|
|
* @param string $header Case-insensitive header name.
|
|
*
|
|
* @return bool 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.
|
|
*/
|
|
public function hasHeader($header);
|
|
|
|
/**
|
|
* Remove a specific header by case-insensitive name.
|
|
*
|
|
* @param string $header Case-insensitive header name.
|
|
*/
|
|
public function removeHeader($header);
|
|
|
|
/**
|
|
* Appends a header value to any existing values associated with the
|
|
* given header name.
|
|
*
|
|
* @param string $header Header name to add
|
|
* @param string $value Value of the header
|
|
*/
|
|
public function addHeader($header, $value);
|
|
|
|
/**
|
|
* Merges in an associative array of headers.
|
|
*
|
|
* Each array key MUST be a string representing the case-insensitive name
|
|
* of a header. Each value MUST be either a string or an array of strings.
|
|
* For each value, the value is appended to any existing header of the same
|
|
* name, or, if a header does not already exist by the given name, then the
|
|
* header is added.
|
|
*
|
|
* @param array $headers Associative array of headers to add to the message
|
|
*/
|
|
public function addHeaders(array $headers);
|
|
|
|
/**
|
|
* Sets a header, replacing any existing values of any headers with the
|
|
* same case-insensitive name.
|
|
*
|
|
* The header values MUST be a string or an array of strings.
|
|
*
|
|
* @param string $header Header name
|
|
* @param string|array $value Header value(s)
|
|
*/
|
|
public function setHeader($header, $value);
|
|
|
|
/**
|
|
* Sets headers, replacing any headers that have already been set on the
|
|
* message.
|
|
*
|
|
* The array keys MUST be a string. The array values must be either a
|
|
* string or an array of strings.
|
|
*
|
|
* @param array $headers Headers to set.
|
|
*/
|
|
public function setHeaders(array $headers);
|
|
}
|