К содержанию
Medusa
Документация

HTTP-ответы

Medusa\Http\Response используется для формирования HTTP-ответов на основе объектов ответа.

Инициализация класса

Создайте объект Response и передайте в него один из типов ответа.

use Medusa\Http\Response;

$successResponse = new Response(
    new Response\JsonResult(['success' => true], 200)
);

$errorResponse = new Response(
    new Response\JsonError('Unknown error', 500)
);

Установка заголовков ответа

Метод $response->addHeader($key, $value) добавляет один заголовок:

Код:

$response->addHeader('Cache-Control', 'no-cache');

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

Метод $response->getHeaders() возвращает все заголовки, которые будут отправлены клиенту.

Код/Результат:

$headers = $response->getHeaders();

echo print_r($headers, true);
Array
(
  [Content-Type] => application/json; charset=UTF-8
  [Cache-Control] => no-cache
)

Метод $response->getHeaders($key) возвращает конкретный заголовок.

Код/Результат:

$contentType = $response->getHeaders('Content-Type');

echo $contentType;
application/json; charset=UTF-8

Вывод ответа

Метод $response->view() отправляет заголовки ответа, устанавливает HTTP-код и выводит тело ответа.

Код/Результат:

$response = new Response(
    new Response\JsonResult(['success' => true], 200)
);

$response->view();
{"result":{"success":true}}