0
点赞
收藏
分享

微信扫一扫

浏览器发送OPTIONS预检请求

yundejia 2022-05-03 阅读 88

浏览器在什么情况下会发起options预检请求?

在非简单请求且跨域的情况下,浏览器会发起options预检请求。

关于简单请求和复杂请求:

1.简单请求

简单请求需同时满足以下两个条件

2 复杂请求

非简单请求即是复杂请求

常见的复杂请求有:

  1. 请求方法为 PUT 或 DELETE

  2. Content-Type 字段类型为 application/json

  3. 添加额外的http header 比如access_token

在跨域的情况下,非简单请求会先发起一次空body的OPTIONS请求,称为"预检"请求,用于向服务器请求权限信息,等预检请求被成功响应后,才发起真正的http请求。

3.问题:

如果浏览器前端每次请求都会在header添加token值,然后后端进行拦截验证。

但是第一次的OPTIONS请求前端是没有添加上这个token值的,所以会导致后端拦截验证失败,即所有这些跨域请求都会失败。

解决:

前后端分离,SpringBoot拦截器中,获取的请求头token为NULL问题解决_饭上的爱豆的博客-CSDN博客_token为null

举报

相关推荐

0 条评论