Я использую Laravel 5 для своего приложения и для установки типа контента я использовал промежуточное ПО CORS, которое выглядит так.Невозможно добавить CORS для определенного маршрута в Laravel 5
public function handle($request, Closure $next)
{
return $next($request)
->header('Access-Control-Allow-Credentials', 'true')
->header('Access-Control-Allow-Methods', 'POST, GET, OPTIONS, PUT, DELETE')
->header('Access-Control-Allow-Headers', 'Content-Type, Accept, Authorization, X-Requested-With')
->header('Content-Type', 'application/json');
}
Это функция класса CORS.
Но, когда я возвращаю вид Blade, например auth/login
, я получаю простой код HTML в браузере вместо получения фактического представления HTML.
Когда я изменяю «Content-Type» в text/html, представления работают, но apis, который возвращает и принимает json, не работает.
Куда я иду не так?
-> header ('Content-Type', 'application/json') ;. Это ваша ошибка. Эта строка говорит вашему браузеру отображать содержимое как фактическое содержимое JSON, а не HTML. Удалите эту строку, и это нормально – ChainList
Но, мне также нужно приложение/json для apis. – nirvair
Вам нужно сделать еще одно промежуточное ПО и использовать его в группе, обертывающей все маршруты вашего API; – ChainList