API/user 接口为什么无法获得用户信息?

api/user 这个接口,按照教程我用刚登录接口获得的token传入,提示Unable to authenticate with invalid token.

碰到这种情况,如何查错?能断点么?

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
liyu001989
最佳答案

给个截图啥的会不会更方便我帮你猜呢?

  1. token 复制的时候错了
  2. token 传输的格式错了,Bearer?
  3. 生成的时候 和验证的时候 jwt_secret 不同
  4. token 中存储的 id 没有在数据库中找到对应的用户
5年前 评论
讨论数量: 9
宇宙最厉害

重新使用登录接口,然后用新的token试一下。

5年前 评论
liyu001989

可能是 jwt_secret 没设置对,重新检查一下

5年前 评论

@liyu001989 这个按照教程设置的,没有问题。

5年前 评论

@沈益飞 试过了,还是老样子。
教程前面的登录接口、更新用户token、删除token 这些都没问题。

5年前 评论
liyu001989

给个截图啥的会不会更方便我帮你猜呢?

  1. token 复制的时候错了
  2. token 传输的格式错了,Bearer?
  3. 生成的时候 和验证的时候 jwt_secret 不同
  4. token 中存储的 id 没有在数据库中找到对应的用户
5年前 评论

@liyu001989
问题解决了,auth.php中web的provider要改成members。我没有用系统默认的users,没想到只改api那个provider不行,还要改web这个。

file

5年前 评论

@Rocket 我也是和你一个问题,不明白用api的中间件为什么还要改web。。。

5年前 评论

@Rocket @Audacious
在你只改api provider为member的情况下 ,是否在文件下方的provider中新增配置了member配置。。

5年前 评论

找到原因了 'jwt' => 'Dingo\Api\Auth\Provider\JWT', 写错位置了

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!