Laravel и паспорт, случайные 401 ошибка


Я пишу одностраничное веб-приложение.

Я использую Vue.js в передней части и Laravel в задней части.

Я включил аутентификацию токена паспорта и получаю отправку токена аутентификации

var login_data = {
    client_id : 2,
    client_secret : "SECRET_KEY",
    grant_type : "password",
    username : "mail",
    password : "pass"
}

К этой конечной точке паспорта http://IPADDRESS/oauth/token . Затем я аутентифицирую свои запросы AJAX, включая этот заголовок

{ 'Authorization': 'Bearer ' + ACC_TOKEN }

Большую часть времени все работает нормально, но иногда я получаю 401 unauthorized. Обычно, если я просто делаю это снова, просьба проходит насквозь.

Я удалил промежуточное программное обеспечение VerifyCsrfToken из Kernel.php, а также добавил маршрут API к исключениям, поэтому я не думаю, что в этом проблема.

Частота появления ошибки, по-видимому, меняется от сети к сети, что означает, что при подключении к определенным сетям это почти никогда не происходит, хотя иногда она постоянна.

Честно говоря, я понятия не имею, почему это происходит.

Author: Antti29, 2017-04-01

1 answers

Моя проблема заключалась в PROJECTDIR/vendor/lcobucci/jwt/src/Signer/Rsa.php .

Здесь функция openssl (openssl_get_publickey) иногда возвращает что-то неправильное, несмотря на то, что сертификат действителен.

Мне не удалось найти реального решения.

Мой взлом на данный момент просто меняет код, чтобы всегда возвращать 1.

Это не меняет способ аутентификации токена, но удаляет проверку Rsa и 401 ошибку, вызванную такой неисправностью.

 2
Author: Lorenzo Norcini, 2017-05-05 21:45:15