使用 laravel passport
作为 api
认证。使用授权码方式已经申请到了有效token
。
在 postman
中运行正常:
通过 javascript
访问的时候却出现了问题!
javascript
代码如下:
我表示特别无语,为什么 postman
使用 token
都正常,然后 javascript
使用 token
访问却认证不成功进行了重定向!!
使用 laravel passport
作为 api
认证。使用授权码方式已经申请到了有效token
。
在 postman
中运行正常:
通过 javascript
访问的时候却出现了问题!
javascript
代码如下:
我表示特别无语,为什么 postman
使用 token
都正常,然后 javascript
使用 token
访问却认证不成功进行了重定向!!
1 回答4.1k 阅读✓ 已解决
3 回答1.9k 阅读✓ 已解决
2 回答2.3k 阅读✓ 已解决
1 回答1.4k 阅读✓ 已解决
2 回答722 阅读✓ 已解决
2 回答2.3k 阅读
3 回答2.6k 阅读✓ 已解决
当请求包含自定义请求头(有的时候
Authorization
也被算是自定义头)的时候, 浏览器在发起真正的请求前会以options
方式发起preflight
请求. 而Laravel没有正确处理好预检请求, 所以就会返回404, 然后web服务器重定向404到错误页面。下面的解决方式不是非常优雅:
就是添加处理
preflight
的中间件.然后在
App/Http/kernel.php
中注册该中间件.应该就能修复这个问题