最简单的移动端跨域方式:Access-Control-Allow

2017-03-22  本文已影响1744人  microkof

js跨域是一个老生常谈的话题,但是如今的时代,Access-Control-Allow-Origin越来越成为主流的跨域方案,尤其是移动端,浏览器都是支持的。

原理

Access-Control-Allow-Origin的原理很简单,就是服务器端设置指定的域允许跨域访问,当然这也需要浏览器同时支持。

操作

通常我们服务器端都是用php语言,php设置Access-Control-Allow-Origin就一句:

header('Access-Control-Allow-Origin: http://www.baidu.com');

但是它麻烦之处在于只能设定一个域名,或者是写成*(即星号,允许所有域名跨域),显然星号就太泛滥了,但是有时候一个域名又不够用,怎么办?

可以写条件语句:

    if ( strpos($_SERVER['HTTP_REFERER'], 'http://aaa.com') === 0 ) {
      header('Access-Control-Allow-Origin: http://aaa.com');
    } elseif ( strpos($_SERVER['HTTP_REFERER'], 'https://bbb.com') === 0 ) {
      header('Access-Control-Allow-Origin: https://bbb.com');
    } elseif ( strpos($_SERVER['HTTP_REFERER'], 'http://ccc.com') === 0 ) {
      header('Access-Control-Allow-Origin: http://ccc.com');
    }
上一篇下一篇

猜你喜欢

热点阅读