使用CROS解决跨域问题

Posted hackyo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用CROS解决跨域问题相关的知识,希望对你有一定的参考价值。

使用jq的话,设置ajax这两个属性即可。

第一个为使用crossDomain,第二个属性使其可以传输cookie

$.ajaxSetup({
    crossDomain: true,
    xhrFields: {
        withCredentials: true
    }
});

但这种方式IE9并不支持,这时候强大的jq插件库的作用就显示出来了

插件地址:https://github.com/MoonScript/jQuery-ajaxTransport-XDomainRequest

同时后台还需要进行设置,spring中直接在Controller上加上@CrossOrigin注解即可。

如果失效,请为Controller设置具体的method

@CrossOrigin
@RequestMapping(value = "/Controller", produces = "text/html;charset=UTF-8", method = RequestMethod.POST)

如果不用spring需自行设置下面三个头信息

Access-Control-Allow-Origin
Access-Control-Allow-Credentials
Access-Control-Expose-Headers

以上是关于使用CROS解决跨域问题的主要内容,如果未能解决你的问题,请参考以下文章

SpringBoot的Cros跨域问题经常始终不能解决跨域的原因

SpringBoot的Cros跨域问题经常始终不能解决跨域的原因

SpringBoot的Cros跨域问题经常始终不能解决跨域的原因

laravel/lumen使用CROS解决跨域问题

解决vue nodejs中cros跨域cookie和session失效的问题

springboot之跨域访问cros,@CrossOrigin注解