我正在使用带有护照认证的laravel 5.5 for API Routes。我正在使用不记名令牌。 问题是接受旧生成的令牌代替未经身份验证的令牌。 步骤:
我能做到这一点有什么办法吗? 提前谢谢。
答案 0 :(得分:3)
一种可能的解决方案是: 在创建新令牌之前检查,如果旧令牌存在并删除此令牌。要做到这一点:
创建名为 OauthAccessToken
的模型更新您的用户模型以下
/**
* 1:n zu access token, we need to logout users
*
* @return \Illuminate\Database\Eloquent\Relations\HasMany
*/
public function accessTokens()
{
return $this->hasMany(OauthAccessToken::class);
}
现在您可以查看并删除用户的所有令牌
if ($user->accessTokens->count() > 0) {
$user->accessTokens()->delete();
}