chazovs
@chazovs
Корпорация Центр

Почему auth:api блокирует cors в laravel?

Axios обращается к laravel
const sessionid = localStorage.getItem('sessionid');
 const headers = {
                Authorization: 'Bearer ' + sessionid,
                'Content-type': 'application/json'
            }

responseApi = axios({
                    method: 'get',
                    url: 'http://127.0.0.1:8000/api/v1/companies',
                    headers: headers,
                });


На сервере такой роутинг
Route::group(['middleware' => [ 'cors', 'auth:api']], function() {
    Route::resource('v1/companies', 'CompanyAPIController');
});


И вот такой мидлвар Cors
class Cors
{
    public function handle($request, Closure $next)
    {
        $response = $next($request);
        return $response
            ->header('Access-Control-Allow-Origin', '*')
            ->header('Access-Control-Allow-Methods', 'POST, GET, OPTIONS, PUT, DELETE')
            ->header('Access-Control-Request-Headers', 'X-Authentication, Authorization')
            ->header('Access-Control-Allow-Headers', 'Content-Type, X-Auth-Token, Origin');
    }
}


Если не передавать заголовки в axios и убрать мидлвар auth:api, то все начинает работать нормально. Но с заголовками и auth:api я получаю блокировку от cors https://w6p.ru/OTdhYTd.jpg

Почему это происходит и как этого избежать?

вот такой ответ я получаю в браузере https://w6p.ru/MjkzMTQ.jpg

ЗЫ через postman запрос проходит нормально https://w6p.ru/OWE4ODk.jpg
  • Вопрос задан
  • 82 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы