如何将Laravel护照令牌存储在Redis /内存缓存中?

时间:2018-07-29 21:48:25

标签: laravel redis laravel-passport

我有 SPA应用(Laravel + vue.js)和 laravel护照。 令牌附加到每个请求,并检查数据库中是否存在此类令牌。因此,对于每个获取/发布请求,还会再有一个请求检查令牌的有效性,每次都将其发送到数据库。例如的要求:

select * from `oauth_access_tokens` where `id` = '6756c7ef9221d9b897c1980a84349618aefce2e44db6380756b839a19c54bc5a0a65be3cd2a6ac90' limit 1

我可以将此表保留在Redis中吗?在laravel护照中,先检查,是否有一个 redis令牌,如果没有,请然后检入数据库,然后添加它重做。我想以此方式减少负载

1 个答案:

答案 0 :(得分:0)

/**
 * The event listener mappings for the application.
 *
 * @var array
 */
protected $listen = [
    'Laravel\Passport\Events\AccessTokenCreated' => [
        'App\Listeners\RevokeOldTokens',
    ],

    'Laravel\Passport\Events\RefreshTokenCreated' => [
        'App\Listeners\PruneOldTokens',
    ],
];