解决服务器之间跨域请求问题

解决服务器之间跨域请求问题

 

列 ​ajax 请求 必须带  'withCredentials :true ' 跨域安全策略 ,其他js请求可自行查看'跨域安全策略'书写方法

 

在此之前要明白CORS

什么是CORS

CORS是一个W3C标准,全称是"跨域资源共享"(Cross-origin resource sharing)。CORS需要浏览器和服务器同时支持。目前,所有浏览器都支持该功能,IE浏览器不能低于IE10。

它允许浏览器向跨源服务器,发出XMLHttpRequest请求,从而克服了AJAX只能同源使用的限制。整个CORS通信过程,都是浏览器自动完成,不需要用户参与。对于开发者来说,CORS通信与同源的AJAX通信没有差别,代码完全一样。浏览器一旦发现AJAX请求跨源,就会自动添加一些附加的头信息。因此,实现CORS通信的关键是服务器。只要服务器实现了CORS接口,就可以跨源通信

方法一 原始方式

服务器第一次请求,跨域请求被拦截

 

可以看出来  响应头缺少信息 :'Access-Control-Allow-Origin'与 响应的服务器地址'http://localhost:9003'  我们去设置响应头信息 

 

 

设置后我们再次发送请求 又出了一个新的错误 ,证明之前的问题已经解决了

 

这响应头是缺少  'Access-Control-Allow-Credentials' ,与响应信息必须 为  'true' ,那我们继续去设置响应头信息

继续运行  发现成功跨域访问

 

方法二 springmvc注解

完!

你可能感兴趣的:(服务器)