在前端页面发起ajax请求时会出现跨域问题。
跨域问题我目前了解到的解决办法有三种:1.Nignx反向代理。2.拦截器对所有请求进行拦截,设置响应头。3.使用@CrossOrigin主键。这三种方法1.在大型应用中,需要实现负载均衡和反向代理时,顺带解决跨域问题,是微服务的比较好的解决跨域的办法。2.常规办法,一般单体应用都会配置拦截器,对请求和token或接口等拦截过滤,顺便在拦截器里写几行代码就可以解决跨域。3.一个注解@CrossOrigin("*")解决跨域问题,实测在如果有拦截器且拦截器不处理跨域的话这个注解也没用。
综上所述,一般单体应用解决跨域问题选择2.
要加的就是这四行,统统都写成* ***** ******** ,什么域都随便跨
/* ********************************************************************************************************* */
response.setHeader("Access-Control-Allow-Origin", "*");
response.setHeader("Access-Control-Allow-Methods", "*");
response.setHeader("Access-Control-Allow-Headers", "*");
response.setHeader("Access-Control-Allow-Credentials", "true");
/* ********************************************************************************************************* */