Laravel 5.4 Passport - API не может установить 30-дневный токен с истечением срока действия

Я использую аутентификацию паспорта Laravel 5.4. У меня проблема с установкой даты истечения срока действия токена API на 30 дней. Я пробовал данный код в документации Laravel, но он не работает. В базе данных отображается срок годности токена по умолчанию, равный одному году.

я использовал

public function boot(){

    $this->registerPolicies();

    Passport::routes();

    Passport::tokensExpireIn(Carbon::now()->addDays(30));

}

Если есть какое-то решение, пожалуйста, предложите мне.

Спасибо


person Naveen Roy    schedule 23.11.2018    source источник


Ответы (1)


у меня тоже была такая же проблема, так что ... я использовал то же самое

попробуйте изменить прямо в PassportServiceProvider.php

перейти к PassportServiceProvider.php путь должен быть таким

projectName/vendor/laravel/passport/src/PassportServiceProvider.php

и исправь эту линию

new PersonalAccessGrant, new DateInterval('P1Y')

например, установите срок действия 1 месяц, затем

new PersonalAccessGrant, new DateInterval('P1M')

например, установите срок действия 1 неделю, затем

new PersonalAccessGrant, new DateInterval('P1W')

например, установите срок действия 5 ДНЕЙ, затем

new PersonalAccessGrant, new DateInterval('P5D')

подробнее DateInterval см.

проблема с github см.

вопрос о stackoverflow см.

person Jignesh Joisar    schedule 23.11.2018
comment
Спасибо, сэр, вы сэкономили мне время. Если я не получу ответа, то мне придется использовать новый способ аутентификации API. Большое спасибо - person Naveen Roy; 24.11.2018