咨询下 jwt-auth 中系列问题
使用Tymon\JWTAuth包实现jwt效果,但有几个方面不太懂。
- 通过
Auth::guard('api')->payload()查看到sub中是用户id,那么Auth::guard('api')->user()本质上还是从数据库还是通过主键用户id查询返回信息吗? - 我看了一下
Auth::guard('api')->id()是通过user查询数据库后返回的,为什么不直接返回payload中的sub呢? Auth::guard('api')->getUser()和Auth::guard('api')->user()有什么区别?- 如果可以,能否将
Auth::guard('api')->user()改成从redis或其他缓存中取呢
关于 LearnKu
首先,,,不是只要有个 ID,就确定可以登录的,,,你可以试试用 ID=1 登录后,把这个用户删了,再用 token 去请求,应该是 401 的,,,所以肯定会去查。
如果你想把用户存到缓存,论坛有个类似的帖子,
或者自己观察下他取用户的逻辑,进行重写
这个问题提的非常好,帖子链接大概是这个 => Larave Auth Token 认证使用自定义 Redis UserProvider