跨域解决方案

跨域:  

  指的是浏览器不能执行其他网站的脚本,是由于浏览器的“同源策略"引起的,是为了网站的安全。

同源:

  就是指域名、协议、端口都相同的页面!也就是当前网站。

由于基本上都用过所以这里仅记录方案,以作日后备忘!!!

第一种方案:

     原生的iframe标签的使用,这样的话就可以从我域获取iframe的内容;

第二种方案:

     使用script的特性,也就是jsonp,script的src可以获取动态代码,主要有一个回调函数(所谓jsonp:就是一个json数据跟一个回调函数的组合);

第三种方案:

    设置http状态头,Access-Control-Allow-Origin:*(有些ie的版本不支持),没有用过这种方式;

第四种方案:

    服务器代理的方式。这种是最喜欢用的,就是nginx反向代理,其实原理就是使用了反向代理的机制,获取别的域名,然后把域名代理到本站的域名下,这样就是同域了。

    使用到的是rewrite重写、代理location的配置。非常方便,只有一个问题,就是现在很多网站的api基本上都是不同域下的,所以如果要使用所有的api的话,最好是

    代理相应的域名。(这种也没有用过,但是以后可以尝试,觉得非常好)

原文地址:https://www.cnblogs.com/kevinfuture/p/4834571.html