设置cors请求头,允许其他域名访问就行了。
这样处理通常解决大部分的跨域问题,但是某些情况下还是会有问题。
二. 如果请求是post请求,而且后台要接收的参数是json格式啊,还要支持跨域的话,光这样设置还是行不通的,如下: 请求发现method是OPTIONS ,返回的状态码是403
这是因为浏览器发出的复杂请求会预先发送options请求给服务器,服务器需要反馈一个成功的Response,但是咱们的服务器并没有对于这个复杂请求返回成功的状态码(200),
导致后续的post请求就不发送了。
上述请求中按理说:要发送的数据类型应该是这样的
对于这种情况,解决方式如下:
方法一:后端对于在接口中设置允许通过OPTIONS验证,java代码如下:
这儿大致意思为如果请求是OPTIONS,返回200状态码表示正常请求
方法二:nginx层增加判断允许通过OPTIONS验证,nginx配置如下:
这儿大致意思为,nginx接收到OPTIONS请求就直接返回200状态码表示正常请求