В Laravel, есть ли способ удалить старые аннулированные / просроченные токены паспорта - PullRequest
0 голосов
/ 06 февраля 2019

Я использую паспорт Laravel для реализации API. Когда пользователь заходит на сайт, он создает новый токен, старые аннулируются, из-за этого записи растут день ото дня.

Isесть ли вообще удалить паспорт с просроченными токенами?

Заранее спасибо.

1 Ответ

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

Вы должны использовать задания CRON для этого.Просто создайте команду, которая раз в день (например) запрашивает таблицу БД для отозванных токенов, и удалите эти записи.

php artisan make:command DeleteRevokedTokens

он сгенерирует этот файл в app/Console/Commands.Запишите эту Eloquent логику в методе handle() этой команды.Дайте этой команде имя в переменной $signature и описание в переменной $description.

Затем введите app/Console/Kernel.php и в методе schedule() добавьте строку, подобную этой $schedule->command('yourCommandNameThatYouWroteInSignatureVariableOfYourCommand')->dailyAt('00:00');

Вот и все.Теперь просто включите свой CRON jobs.Это бесполезно в разработке, но должно в производстве.Чтобы проверить свою команду, просто напишите в терминал php artisan yourCommandNameHere, где yourCommandName - это переменная $signature из этой команды.Итак, когда вы пишете это, он выполнит это.Задание Cron будет обрабатывать только то, что эта команда автоматически запускается, если вы задали ее в app/Console/Kernel.php.

...