Хотя вы редко взаимодействуете с данными HTTP-ответа (response) напрямую, вы можете сделать это с помощью
метода getResponse()
из базового класса AbstractActionController
.
Метод getResponse()
возвращает экземпляр класса Zend\Http\PhpEnvironment\Response
.
Таблица 4.4 содержит самые важные методы этого класса:
Имя метода | Описание |
---|---|
fromString($string) |
Заполняет объект ответа из строки. |
toString() |
Конвертирует объект запроса в строку. |
setStatusCode($code) |
Устанавливает код состояния HTTP и (опционально) сообщение (status message). |
getStatusCode() |
Извлекает код состояния HTTP |
setReasonPhrase($reasonPhrase) |
Устанавливает HTTP сообщение (status message). |
getReasonPhrase() |
Возвращает HTTP сообщение (status message). |
isForbidden() |
Проверяет код ответа на 403 Forbidden. |
isNotFound() |
Проверяет, указывает ли код состояния на то, что ресурс не найден (код состояния 404). |
isOk() |
Проверяет успешность ответа. |
isServerError() |
Проверяет ответ на код состояния 5xx. |
isRedirect() |
Проверяет, является ли ответ 303 Redirect. |
isSuccess() |
Проверяет, является ли ответ 200 Successful. |
setHeaders(Headers $headers) |
Позволяет устанавливать заголовки ответа. |
getHeaders() |
Возвращает список заголовков ответа. |
getCookie() |
Извлекает заголовок Куки. |
setContent($value) |
Устанавливает необработанное содержимое ответа. |
getContent() |
Возвращает необработанное содержимое ответа. |
getBody() |
Получает и декодирует содержимое ответа. |
Например, используйте следующий код, чтобы установить код состояния 404 для ответа:
$this->getResponse()->setStatusCode(404);
Используйте следующий код, чтобы добавить заголовок (header) в HTTP-ответ:
$headers = $this->getResponse()->getHeaders();
$headers->addHeaderLine(
"Content-type: application/octet-stream");
Используйте следующий код, чтобы установить содержимое (content) HTTP-ответа:
$this->getResponse()->setContent('Some content');