Laravel 护照 API:检索经过身份验证的令牌
Laravel Passport API: Retrieve Authenticated Token
情况
我正在使用 Laravel Passport API 通过个人访问令牌在 Laravel 和外部 "agents" 之间进行通信:https://laravel.com/docs/5.5/passport#personal-access-tokens
您可以为每个用户创建多个令牌。
身份验证有效,我可以通过 Auth::User()
检索用户
问题
如何查看使用了哪个令牌?
背景
我想为同一用户的不同 "agents" 使用不同的令牌,我需要知道使用哪个令牌来查看谁在连接。
您可以使用:
Auth::user()->token()
获取代币模型的函数。这是 class "Token extends Model" 的对象,因此您应该能够像使用任何其他模型一样使用它。
另外在我的项目中还有那个模型:
namespace App;
use Illuminate\Database\Eloquent\Model;
class OauthAccessToken extends Model
{
//
}
和关系:
class User extends Authenticatable
{
//...
public function accessTokens()
{
return $this->hasMany('App\OauthAccessToken');
}
}
所以我可以简单地访问所有令牌,例如删除它们:
Auth::user()->accessTokens()->delete();
情况
我正在使用 Laravel Passport API 通过个人访问令牌在 Laravel 和外部 "agents" 之间进行通信:https://laravel.com/docs/5.5/passport#personal-access-tokens
您可以为每个用户创建多个令牌。
身份验证有效,我可以通过 Auth::User()
问题
如何查看使用了哪个令牌?
背景
我想为同一用户的不同 "agents" 使用不同的令牌,我需要知道使用哪个令牌来查看谁在连接。
您可以使用:
Auth::user()->token()
获取代币模型的函数。这是 class "Token extends Model" 的对象,因此您应该能够像使用任何其他模型一样使用它。
另外在我的项目中还有那个模型:
namespace App;
use Illuminate\Database\Eloquent\Model;
class OauthAccessToken extends Model
{
//
}
和关系:
class User extends Authenticatable
{
//...
public function accessTokens()
{
return $this->hasMany('App\OauthAccessToken');
}
}
所以我可以简单地访问所有令牌,例如删除它们:
Auth::user()->accessTokens()->delete();