laravel restful контроллер

351
31 августа 2017, 21:26

Есть такое задание "С ​​использованием ​​фреймворка ​​Laravel ​​реализовать ​​RESTful ​контроллер, ​к​оторый ​​при обращении ​к​ ​​нему ​с​ ​​Accept: ​t​ext/html ​​отдавал ​​бы ​​данные ​​из ​​шаблона, ​​а ​​при ​​обращении по ​т​ому ​​же ​​маршруту ​с​ ​​Accept: ​​application/json, ​​отдавал ​​бы ​к​орректный ​​RESTful ​​ответ, согласно ​​RFC". Как сделать RESTful ​контроллер понятно, а вот дальше ничего не понятно, что означает Accept: ​t​ext/html?

Answer 1

В HTTP-заголовке Accept клиентского запроса к серверу перечисляются типы данных (MIME), которые клиент может обработать и ожидает получить.

То есть вам нужно проанализировать содержимое этого заголовка в запросе, которое можно получить следующим образом:

$accept = request()->headers->get('accept');

и если он содержит или равен text/html (request()->acceptsHtml()), то вернуть HTML вариант страницы:

return view('page_template');

а если он содержит или равен ​​application/json (request()->acceptsJson()), то вернуть данные в формате JSON:

return response()->json($page_data);
READ ALSO
RedBeanPHP, проблема с R::count()

RedBeanPHP, проблема с R::count()

Как исправить эту ошибку?

401
Ошибка функции при передаче аргумента

Ошибка функции при передаче аргумента

Есть часть логики (отправка InlineKeyboardButton в чат):

287
Работа оператора switch в PHP

Работа оператора switch в PHP

Изучаю PHP, добрался до оператора switch, пересмотрел множество примеров, но так и не понял как можно с помощью этого оператора реализовать подобное:

331