Cors(Cross-origin Resource Sharing)基本思想是使用自定义的HTTP头部允许浏览器和服务器相互了解对方,从而决定响应成功与否。
CORS与JSONP对比:
1.JSONP只能实现get请求,而CORS支持所有类型的HTTP请求;
2.使用CORS,开发者可以使用普通的XmlHttpRequest发起请求和获得数据,比起JSONP有更好的错误处理;
3.JSONP主要被老的浏览器支持,它们往往不支持CORS,而现在大多数浏览器都已经支持CORS;
CORS浏览器支持情况:
Chrome 3+
Firefox 3.5+
Opera 12+
Safari 4+
Internet Explorer 8+
CORS实现方式:
一、在方法上使用注解 @CrossOrigin(origins="http://ip:port")[注:origins是springmvc4.2以后增加的]
二、写一个类继承WebMvcConfigurerAdapter类
三、和方式二类似,全局设置
前端则可以正常调用,eg: