本地和前端联调遇到的问题,前端笨球的,非要后端解决。(方法来自百度到的https://blog.csdn.net/wt520it/article/details/88803677)
方法简单粗暴,解决浏览器的通源策略,设置header;
设置跨域请求访问,参数:*代表的是所有的域名都可以访问
response.setHeader("Access-Control-Allow-Origin","*");
服务器:
使用nginx做转发网关(强烈推荐使用)
当时就是做联调,每次访问他们本地的话,比较麻烦,对接的平台比较多,然后就给测试环境的代码做了一个映射,方便其他的平台访问。
server {
listen 80 default_server;
#在这里拿这个访问路径为www.demo.com
server_name www.demo.com;
if ($http_Host !~* ^www.demo.com$)
{
return 403;
}
charset utf-8;
access_log /var/log/nginx/aaa.access.log main;
#如果想访问的话,只需要通过 www.demo.com/a 即可
location ^~ /a {
proxy_pass http://xxxxx:8080/a/;
proxy_redirect off;
proxy_set_header X-Forwarded-For $remote_addr;
}
#如果想访问的话,只需要通过 www.demo.com/b 即可
location ^~ /b {
proxy_pass http://xxxx:8080/b/;
proxy_redirect off;
proxy_set_header X-Forwarded-For $remote_addr;
}
error_page 404 /error/404.html;
error_page 500 502 503 504 /error/404.html;
}