跨域是什么?跨域是由于浏览器的同源策略而引发的问题,所谓同源是指,域名,协议,端口均相同。举个例子:

www.123.com访问www.456.com,属于跨域,域名不同

abc.123.com访问def.123.com,属于跨域,子域名不同

http://123.com访问https://123.com,属于跨域,协议不同

123.com:8080访问123.com:8081,属于跨域,端口不同

开发中主要有三种方法来处理跨域问题:

1. 设置header

可以再在header里设置ACCESS-CONTROL-ALLOW-ORIGIN,比如

header(“ACCESS-CONTROL-ALLOW-ORIGIN:www.example.com”);允许示例网站访问当前页面。

或者使用通配符:

header(“ACCESS-CONTROL-ALLOW-ORIGIN:*”);允许任何网站来访问当前页面。

2. 代理访问

比如我当前域名是123.com,我的123.com/index.html需要访问456.com/api.php,如果直接访问是不可行的。如果在123.com下有一个getapi.php页面,在这个页面里去请求456.com/api.php,再把得到的结果返回给index.html,这样做相当于跳过了浏览器的检测。

3. jsonp

http://blog.csdn.net/navy_xue/article/details/40016475

 

Leave a comment

电子邮件地址不会被公开。 必填项已用*标注