Метод header
Метод header класса Response применяется к объекту ответа
и позволяет добавлять или изменять HTTP-заголовки перед отправкой
ответа клиенту. Первым параметром передаётся имя заголовка,
вторым - значение заголовка. Метод возвращает тот же объект
ответа, что позволяет использовать цепочки вызовов.
Синтаксис
<?php
$response->header($name, $value);
?>
Пример
Давайте установим заголовок Content-Type для JSON-ответа:
<?php
namespace AppHttpControllers;
use IlluminateHttpRequest;
class ArticleController extends Controller
{
public function index(Request $request)
{
$res = response()->json(['status' => 'success']);
$res->header('Content-Type', 'application/json');
return $res;
}
}
?>
Пример
Давайте добавим кастомный заголовок X-Custom-Header:
<?php
namespace AppHttpControllers;
use IlluminateHttpRequest;
class ArticleController extends Controller
{
public function show(Request $request, $id)
{
$res = response('Article data');
$res->header('X-Custom-Header', 'CustomValue');
return $res;
}
}
?>
Пример
Давайте установим несколько заголовков через цепочку вызовов:
<?php
namespace AppHttpControllers;
use IlluminateHttpRequest;
class ArticleController extends Controller
{
public function store(Request $request)
{
$res = response()->json(['id' => 1, 'title' => 'article']);
$res->header('Content-Type', 'application/json')
->header('X-Rate-Limit', '100')
->header('Cache-Control', 'no-cache');
return $res;
}
}
?>
Пример
Давайте установим заголовок для скачивания файла:
<?php
namespace AppHttpControllers;
use IlluminateHttpRequest;
class ArticleController extends Controller
{
public function download(Request $request)
{
$res = response()->download(storage_path('app/file.pdf'));
$res->header('Content-Disposition', 'attachment; filename="document.pdf"');
return $res;
}
}
?>
Смотрите также
-
метод
withHeaders,
который добавляет сразу несколько заголовков -
метод
cookie,
который добавляет cookie к ответу -
метод
json,
который возвращает JSON-ответ -
метод
file,
который возвращает файл в ответе