请问使用这个CrossOrigin注解的时候怎么在orign中获取request中的Access-Control-Allow-Origin值呢?

来源:5-17 被调用方解决跨域 - Spring框架解决方案

杨勤_cd

2018-09-24 13:37

不想写死,请问使用这个CrossOrigin注解的时候怎么在orign中获取request中的Access-Control-Allow-Origin值呢?


https://img4.mukewang.com/5ba8781b000159ab07850400.jpg

写回答 关注

2回答

  • 君子惜花花满楼
    2019-05-17 21:54:25
    已采纳

    根据课程里老师说的,Access-Control-Allow-Origin这个值在nginx代理服务器那里已经配置好了,用的是动态的request请求域名,所以这里的origin可以不用设置。@CrossOrigin这个注解原理是利用spring中内置的拦截器对报文进行修改,而因为getCookie中添加了xhrFields: withCredentials: true这个属性,所以需要在响应报文中添加Access-Control-Allow-Credentials这个属性,但他默认为false,所以设置为true就可以了


  • 杨勤_cd
    2018-09-24 13:48:41

    虽然这里只用设置第二个参数就能解决问题,但是还有一个疑问:

    =====================

    点这个注解进去,发现orgins默认是“*”,allowCredentials默认是“”;

    但是如果将allowCredentials设置成true,orgins不设置,通过前台查看orgins对应的就是请求头中Access-Control-Allow-Origin了,这是为什么呢?




ajax跨域完全讲解

完全讲解Ajax跨域产生的原因和解决思路,掌握跨域的各种解决方案

62554 学习 · 90 问题

查看课程

相似问题