在登录中注入一个步骤
Inject a step into login
我正在尝试在用户首次登录我的 api 时执行操作。我通过密码授予授权方法将 Laravel 6.2 与 Passport 一起使用。
我的用户模型有以下字段。
id
,
username
,
display_name
,
firstname
,
lastname
,
display_picture
,
locked
,
email
,
last_login
,
created_at
,
updated_at
,
deleted_at
最初我认为最好的启动位置是在将登录令牌发送给用户之前,但是由于用户从未在 last_login 字段为空之前登录过。但是问题是因为在这个阶段令牌永远不会发回给用户,我无法在用户进入创建阶段时确认用户的令牌。所以我的request guard没有登录用户信息
Auth()->guard('api')->user();
即returns 为空。关于如何完成此操作的任何想法?
这个答案不是 Laravel 特定的,但你的问题让我想起了我前段时间解决的一个问题。
我所做的是在用户对象上实现了一个 last_seen
字段 - 该字段在用户创建或帐户验证时未填充。如果 cookie 是旧的,它会在登录时填充并且有意义 activity。
如果用户登录时该字段为空,我没有将它们发送到用户区,而是将它们发送到教程,然后更新了该字段——如果该字段已经填充,那么我只是更新了该字段并将它们一起发送到用户区。
如果以任何有意义的方式记录用户操作,则可以用计算变量替换相同的字段。
此外,这对于停用未使用的帐户和 "status" 如果平台是社交平台都是有用的值。
我正在尝试在用户首次登录我的 api 时执行操作。我通过密码授予授权方法将 Laravel 6.2 与 Passport 一起使用。
我的用户模型有以下字段。
id
,
username
,
display_name
,
firstname
,
lastname
,
display_picture
,
locked
,
email
,
last_login
,
created_at
,
updated_at
,
deleted_at
最初我认为最好的启动位置是在将登录令牌发送给用户之前,但是由于用户从未在 last_login 字段为空之前登录过。但是问题是因为在这个阶段令牌永远不会发回给用户,我无法在用户进入创建阶段时确认用户的令牌。所以我的request guard没有登录用户信息
Auth()->guard('api')->user();
即returns 为空。关于如何完成此操作的任何想法?
这个答案不是 Laravel 特定的,但你的问题让我想起了我前段时间解决的一个问题。
我所做的是在用户对象上实现了一个 last_seen
字段 - 该字段在用户创建或帐户验证时未填充。如果 cookie 是旧的,它会在登录时填充并且有意义 activity。
如果用户登录时该字段为空,我没有将它们发送到用户区,而是将它们发送到教程,然后更新了该字段——如果该字段已经填充,那么我只是更新了该字段并将它们一起发送到用户区。
如果以任何有意义的方式记录用户操作,则可以用计算变量替换相同的字段。
此外,这对于停用未使用的帐户和 "status" 如果平台是社交平台都是有用的值。