2017-04-18 157 views
0

我正在使用laravel护照制作api,我为一个用户创建了一个令牌,没有重复的用户,我让令牌过期在10天内,但我想添加功能,如果用户已经登录,并用另一个仍然在现有登录功能2条件下使用相同令牌sehinnga的设备再次登录,如果用户登录没有令牌或令牌到期然后创建一个新令牌,如果发现用户登录令牌尚未过期,那么旧令牌将从现在开始过期10天,而不会刷新令牌如何更新laravel 5.4中的访问令牌expire_at(laravel护照),而不刷新访问令牌

回答

0

您可以在创建新令牌或登录时删除旧令牌。首先你需要创建OauthAccessToken模型。

例如, 在用户模式创建下列函数

public function accessTokens() { 
    return $this->hasMany(OauthAccessToken::class); 
} 

And then check and delete the tokens 

$user = User::whereId($id)->with('accessTokens')->first(); 
if ($user->accessTokens->count() > 0) { 
    $user->accessTokens()->delete(); 
}