关于CORS是复杂请求却没有预检的问题

发布于 2022-09-12 01:03:21 字数 909 浏览 12 评论 0

我使用的Axios,在请求头中加入了config.headers.Authorization来传递token
然后定义了config.headers.post['Content-Type'] = 'application/json';

我看MDN上说,Content-Typeapplication/json是复杂请求,会有OPTIONS预检。

我的个人项目,每次请求都有两次:
image.png
这次是预检
image.png
这次是返回数据
image.png

但是在我看掘金的请求的时候,也是Content-Type: application/json,就没有看见OPTIONS预检这一项呢?
就是下图:
image.png

难道掘金不是复杂请求吗?而且我看网站,都没有看见OPTIONS预检。是因为大家都给设置了Access-Control-Max-Age,减少了预检吗?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

动次打次papapa 2022-09-19 01:03:21

请求跨域资源才会有 OPTIONS 预检,同域请求是没有的。

另外预检结果会根据 Access-Control-Max-Age 来缓存。

你可以勾选上开发者工具的 Disable cache 强制不缓存再看看,就能看到预检的请求。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文