has been blocked by CORS policy: Response to preflight request doesn‘t pass access control check 报错

20200819112912844.png

相信很多小伙伴遇到这个问题的第一反应都会联想到跨域问题,然后就用jsonp方法去试。

但是并没有解决,这个问题是在我们做微信公众号的时候遇到的一个问题。于是我就在网上搜了搜

这是我所看到的原创作者的分享

https://blog.csdn.net/lindali1115/article/details/108096631

出现这个问题的原因:

由于浏览器将CORS请求分为两类:简单请求(simple request)和非简单请求(not-simple-request)。非简单请求 会在正式通信之前,增加一次HTTP请求,称之为预检请求。浏览器会先发起OPTIONS方法到服务器,以获知服务器是否允许该实际请求。

这是在第一次预请求时候没有请求成功,预请求不成功。

第一,先找到后台对应的接口,让后台去检查接口是否有抛出异常但是没有正常捕获。
第二,前端vue中注意点是请求的时候有没有使用content-type:application/json还有qs.string()

后台java的写法是增加了下面if option的代码~具体的可以让后台同事参考一下。
(重点关注一下黑色方框里面的内容)

20200819114450538.jpeg

以上就是解决该浏览器报错问题的方法了
如果这篇文章对你有帮助,或者在进行中遇到其他问题,欢迎评论区留言出来。
我们一起探讨~

你可能感兴趣的:(has been blocked by CORS policy: Response to preflight request doesn‘t pass access control check 报错)