PHP实现允许客户端ajax跨域请求

PHP实现服务器端允许客户端ajax跨域方法,通过设置Access-Control-Allow-Origin来实现跨域。

例如:客户端的域名是 api.xxx.com,而请求的域名是www.xxx.com

如果直接使用ajax访问,会有以下错误:

XMLHttpRequest cannot load http://api.test.com. No ‘Access-Control-Allow-Origin’ header is present on the requested resource.Origin ‘http://www.test.com’ is therefore not allowed access.

1.允许单个域名访问

指定某域名http://api.xxx.com跨域访问,则只需在http://www.xxx.com/server.php文件头部添加如下代码:

header('Access-Control-Allow-Origin:http://api.xxx.com');

2.允许多个域名访问

指定多个域名 http://api.xxx.com、http://doc.xxx.com等 跨域访问,则只需在http://www.xxx.com/server.php文件头部添加如下代码:

$origin = isset($_SERVER['HTTP_ORIGIN'])? $_SERVER['HTTP_ORIGIN'] : '';

$allow_origin = array(
'http://api.xxx.com',
'http://doc.xxx.com'
);

if(in_array($origin, $allow_origin)){
header('Access-Control-Allow-Origin:'.$origin);
}

3.允许所有域名访问

允许所有域名访问则只需在http://www.xxx.com/server.php文件头部添加如下代码:

header('Access-Control-Allow-Origin:*');
赞(0)
声明:本网站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-62778877-8306;邮箱:fanjiao@west.cn。本站原创内容未经允许不得转载,或转载时需注明出处:西部数码知识库 » PHP实现允许客户端ajax跨域请求

登录

找回密码

注册