前后端分离解决跨域问题

产生愿意:

        跨域问题的产生是因为,前端在一个服务器上独立一个端口,从这个端口像其他端口服务发起请求,会产生跨域问题;


前端报错如下:


 

 解决方法:

一.在服务层添加 HttpServletResponse response  (这个要在你每一个方法上面添加)

response.addHeader("Access-Control-Allow-Origin","*");


 

二.如果使用spring的情况下可以在controller层上面添加一个注解 @CrossOrigin   (这个只需要添加在服务层)

 


三.添加nginx解决跨域问题。在nginx配置文件上面添加

add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Credentials true;
add_header Access-Control-Allow-Methods GET,POST;

服务器默认是不允许跨域的,给Nginx服务器配置 Access-Control-Allow-Origin *; 后的含义,表示服务器可以接受所有的请求源,即接受所有跨域的请求。但是这样设置在项目中并没有解决跨域,但是设置了具体的项目域名,比如 http://a.xxx.com 后,就可以跨域了;这有些不符合常理,但是情况确实如此;


 

 


版权声明:本文为weixin_65451442原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。