//指定允许其他域名访问header(‘Access-Control-Allow-Origin:*‘);//响应类型header(‘Access-Control-Allow-Methods:POST‘);//响应头设置header(‘Access-Control-Allow-Headers:x-requested-with,content-type‘);就可以实现ajax POST跨域访问了。
代码如下:client。html路径:http://www。client。com/client。html[html]view plaincopy<DOCTYPEHTMLPUBLIC”-//W3C//DTDHTML4。0Transitional//EN”><html><head><metahttp-equiv=”content-type”content=”text/html;charset=utf-8″><title>跨域测试</title><scriptsrc=”//code。
jquery。com/jquery-1。11。3。min。js”></script></head><body><divid=”show”></div><scripttype=”text/javascript”>$。
post(“http://www。server。com/server。php”,{name:”fdipzone”,gender:”male”})。done(function(data){document。getElementById(“show”)。
innerHTML=data。name+‘‘+data。gender;});</script></body></html>server。php路径:http://www。server。com/server。
php[php]view plaincopy<php$ret=array(‘name‘=>isset($_POST[‘name‘])?$_POST[‘name‘]:‘‘,‘gender‘=>isset($_POST[‘gender‘])?$_POST[‘gender‘]:‘‘);header(‘content-type:application:json;charset=utf8‘);header(‘Access-Control-Allow-Origin:*‘);header(‘Access-Control-Allow-Methods:POST‘);header(‘Access-Control-Allow-Headers:x-requested-with,content-type‘);echojson_encode($ret);>Access-Control-Allow-Origin:*表示允许任何域名跨域访问如果需要指定某域名才允许跨域访问,只需把Access-Control-Allow-Origin:*改为Access-Control-Allow-Origin:允许的域名例如:header(‘Access-Control-Allow-Origin:http://www。
client。com‘);如果需要设置多个域名允许访问,这里需要用php处理一下例如允许 www。client。com 与 www。client2。com 可以跨域访问server。php 修改为[php]view plaincopy<php$ret=array(‘name‘=>isset($_POST[‘name‘])?$_POST[‘name‘]:‘‘,‘gender‘=>isset($_POST[‘gender‘])?$_POST[‘gender‘]:‘‘);header(‘content-type:application:json;charset=utf8‘);$origin=isset($_SERVER[‘HTTP_ORIGIN‘])?$_SERVER[‘HTTP_ORIGIN‘]:‘‘;$allow_origin=array(‘http://www。
client。com‘,‘http://www。client2。com‘);if(in_array($origin,$allow_origin)){header(‘Access-Control-Allow-Origin:‘。
$origin);header(‘Access-Control-Allow-Methods:POST‘);header(‘Access-Control-Allow-Headers:x-requested-with,content-type‘);}echojson_encode($ret);>ajax 设置Access-Control-Allow-Origin实现跨域访问。

相关推荐