Использование API с JavaScript - действительный токен - не прошедший проверку подлинности - PullRequest
0 голосов
/ 27 февраля 2019

Итак, я видел около 101% проблем по этому поводу и пробовал каждый из них.Я пытаюсь запустить его как 3 дня безуспешно.Человек, с которым я работаю над проектом, делает то же самое, и он работает на него.

Я установил маршруты, у меня есть \Laravel\Passport\Http\Middleware\CreateFreshApiToken::class, в моих middlewareGroups-> web ,

Я отправляю заголовки с запросами, у меня есть protected static $serialize = true; в EncryptCookies,

Вот пример:

X-CSRF-TOKEN: 8Gr7XcRZDrfiFIwqaPyqVF1stXdIxv1tQ4Up6JUr X-Requested-With: XMLHttpRequest X-XSRF-TOKEN: eyJpdiI6ImU3RFRTRlNNd2hRc0J3bU9qb2l2UGc9PSIsInZhbHVlIjoiaWJnd1wvWTdteW1Cd2w5Zll2SmYwdkplQ094R05HUzZPckM0NUNrdFB5alNpTDduWHkxczZWcU5maW9WS1VnRk9RZGZqdGJQM1FXR29JMFhDS2RyMTVBPT0iLCJtYWMiOiI4YmRmMWI1OWI4OTg1NTM0NmU2Mjk4ZjM0YmU2NjJkOTAwM2JlZDYxZDBkNTEzZDc3ZTdmOTk0NGYwZDBjMWQzIn0= 

, и он всегда говорит

{"message": "Не аутентифицирован."}

Я использую последнюю версию Laravel на Homestead в Windows.Я был бы очень признателен за небольшую помощь, я перепробовал все, и, кажется, ничего не работает.

Ответы [ 2 ]

0 голосов
/ 27 февраля 2019

Похоже, что промежуточное ПО возвращает unauthenticated при проверке токена доступа.

Если вы используете промежуточное ПО для проверки токенов доступа на входящих запросах, например: ->middleware('auth:api');, то на вашемjavascript, вы должны указать токен доступа как bearer токен в заголовке авторизации запроса.

токен доступа должен выглядеть следующим образом: 'Bearer '+access_token

Вот полное объяснение: Защита маршрутов

0 голосов
/ 27 февраля 2019

Аутентификационный токен, который вы ищете, это , упомянутый здесь .К ответу будет прикреплен файл cookie с именем laravel_token, поэтому он должен работать из коробки с axios.Но опять же, это зависит от того, как вы настроили свои axios, и если вы не используете axios, вам нужно вручную установить X-CSRF-TOKEN в заголовке вашего запроса.Похоже, вы устанавливаете X-XSRF-TOKEN, а это не то, что Laravel использует для аутентификации.

Кредит: Laravel 5.4 Паспорт Axios всегда возвращается Неаутентифицированным

...