jwt-auth 的 Authorization 头验证失败

今天在学 Laravel 的 jwt-auth,已成功登录并生成 token。但是,使用 token 请求其他接口时,token 死活验证不成功

经过多番折腾后才发现,因为 Authorization 头的内容还需要加上 token_type 前缀!!!!

 

例如:token  = 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOi8vbG9jYWxob3N0L2FwaS9hdXRoL2xvZ2luIiwiaWF0IjoxNjc4NzE0NTI2LCJleHAiOjE2Nzg3MTgxMjYsIm5iZiI6MTY3ODcxNDUyNiwianRpIjoiS21ubUZrWmZVN2lERmd5RSIsInN1YiI6IjEiLCJwcnYiOiI3ZWJiOGEyY2MxZDk1YjYyYzk1OTRhMjJjOWNlYzIyZjM4ZGI1ZDMxIn0.fxah3OYakm7tFzgwV5V4XlN0uYkU9fgz27pitqncTI8'

则:Authorization 头的内容应该是:'Bearer ' + token

 

注:如果使用 url 参数方式传递 token,则不用加 token_type 前缀,即:'/api/auth/me?token=' + token

 

最后附上单元测试代码:

 

posted @ 2023-03-13 22:24  Tiac  阅读(214)  评论(0编辑  收藏  举报