一直以为AJAX跨域是无法逾越的鸿沟,最近发现原来在服务端可以通过发送header信息来允许AJAX跨域请求。

PHP代码示例:

复制代码 代码如下:

header('Access-Control-Allow-Origin:*');
header('Access-Control-Allow-Headers:X-Requested-With');

经过测试,webkit内核的浏览器成功实现跨域请求。

IE一如既往的不支持~看来只能在移动端享用这一强大功能了

另外,需要注意的是,第一行配置中的*表示允许来自所有referer的跨域请求,如果不想完全开放,可以配置为特定域名。这样就能保证只有来自特定域名的跨域请求可以成功。例如:

复制代码 代码如下:

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

第二行配置的含义是允许异步AJAX请求,因为异步AJAX会自动发送这个header信息,服务端一般通过接受header信息来确定是AJAX请求。一般我们发送的AJAX请求都是异步的。

以上所述就是实现AJAX跨域请求,希望小伙伴们喜欢。

点赞(0)

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部