Laravel 未检测到 header 和 JWT 包中发送的身份验证令牌
Laravel not detecting auth token sent in the header and JWT package
我已经设置了一个 Ionic 应用程序,并且还开始为 API 使用 Laravel。在我发送令牌之前,在 postman 和 Ionic 中一切都很好。
使用名为 Satellizer 的包 angular,它将本地存储中的令牌添加到 header。
我的问题是,我收到一个未提供令牌的错误。
在邮递员中,如果调用:/api/v1/authenticate/user?token=tokenkey
然后它工作正常,如果我也将 url 与 angular 中 url 参数中设置的令牌硬编码为 http 请求,那么它也可以工作。
但是,当使用 postman 并将 header 中的授权参数设置为:
token : tokenkey
我再次遇到缺少令牌的错误。在 angular 中,当向 /api/v1/authenticate/user 发出请求时,我检查了 header 参数,可以看到授权已设置为“Bearer tokenkey”。
为什么 Laravel 没有找到它有什么帮助吗?我找到了有关 Apache 删除身份验证的信息 header 并添加了这个:
RewriteEngine On
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule .* - [e=HTTP_AUTHORIZATION:%1]
到我在 MAMP 上的 Apache 配置文件,重新启动但同样的问题。
还有什么建议吗?
尝试使用
RewriteRule ^ - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
在你的 public/.htaccess.
Whosebug 上的相关问题:Laravel in Apache getting header value
Github 上的相关问题:https://github.com/dingo/api/issues/54 and https://github.com/sahat/satellizer/issues/300
尝试使用
Authorization : Bearer { String_token }
我已经设置了一个 Ionic 应用程序,并且还开始为 API 使用 Laravel。在我发送令牌之前,在 postman 和 Ionic 中一切都很好。
使用名为 Satellizer 的包 angular,它将本地存储中的令牌添加到 header。
我的问题是,我收到一个未提供令牌的错误。
在邮递员中,如果调用:/api/v1/authenticate/user?token=tokenkey
然后它工作正常,如果我也将 url 与 angular 中 url 参数中设置的令牌硬编码为 http 请求,那么它也可以工作。
但是,当使用 postman 并将 header 中的授权参数设置为:
token : tokenkey
我再次遇到缺少令牌的错误。在 angular 中,当向 /api/v1/authenticate/user 发出请求时,我检查了 header 参数,可以看到授权已设置为“Bearer tokenkey”。
为什么 Laravel 没有找到它有什么帮助吗?我找到了有关 Apache 删除身份验证的信息 header 并添加了这个:
RewriteEngine On
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule .* - [e=HTTP_AUTHORIZATION:%1]
到我在 MAMP 上的 Apache 配置文件,重新启动但同样的问题。
还有什么建议吗?
尝试使用
RewriteRule ^ - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
在你的 public/.htaccess.
Whosebug 上的相关问题:Laravel in Apache getting header value
Github 上的相关问题:https://github.com/dingo/api/issues/54 and https://github.com/sahat/satellizer/issues/300
尝试使用
Authorization : Bearer { String_token }