axios无法取消options请求

新手上路,请多包涵

axios 在跨域请求时无法取消options请求哪怕设置了"Content-Type":'text/plain' 也无法取消
`
var instance = axios.create({
baseURL,
headers:{

"Content-Type":"text/plain"

}
});

`

阅读 7.3k
1 个回答

检查你请求的content-type,还有检查你是否使用了自定义的request header。

options请求是浏览器自动发起的。满足以下两个条件,浏览器才会使用OPTIONS预请求:
1.以 GET, HEAD 或者 POST 以外的方法发起请求。或者,使用 POST,但请求数据为 application/x-www-form-urlencoded, multipart/form-data 或者 text/plain 以外的数据类型。比如说,用 POST 发送数据类型为 application/xml 或者 text/xml 的 XML 数据的请求。
2.使用了自定义请求头(比如添加诸如 X-PINGOTHER)。

反过来说,你想取消OPTIONS请求,需要做到以下两点:
1.只使用 GET, HEAD 或者 POST 请求方法。(若用了POST,则数据类型(Content-Type)只能是 application/x-www-form-urlencoded, multipart/form-data 或 text/plain中的一种
2.不要使用自定义的请求头。(比如X-PINGOTHER这种)。

参考https://www.jianshu.com/p/618...

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏