1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > php获取跨域json数据 PHP使用ajax跨域获取json数据的两种方法

php获取跨域json数据 PHP使用ajax跨域获取json数据的两种方法

时间:2022-12-15 11:46:15

相关推荐

php获取跨域json数据 PHP使用ajax跨域获取json数据的两种方法

一.采用JSONP跨域获取数据。(优点:兼容大部分浏览器包括IE6。缺点:获取数据以Get获取较不安全)

前端JS代码:

$.ajax({

"url":"/Bang/post_jsonp.php",

"type":"GET",

"dataType":"JSONP",

"data":{

"loginuser":$("input[name=loginuser]").val(),

"loginpass":$("input[name=loginpass]").val()

},

"success":function(response,status,xhr){

for(variinresponse){

alert(i+"---"+response[i]);

}

},

"error":function(xhr,errorText,errorStatus){

alert("ajax访问错误:"+xhr.status+""+xhr.statusText);

}

});

服务器代码:

$arr=array("user"=>$_GET['loginuser'],"pass"=>$_GET['loginpass'],"c"=>130);

$_result=json_encode($arr);

$callback=$_GET['callback'];

echo$callback."($_result)";

二.采用CORS(跨域源资源共享)获取数据。(优点:以POST数据加密方式获取,较安全。缺点:不兼容IE9及IE9以下浏览器)

前端代码:

$.ajax({

"url":"/Bang/post_jsonp.php",

"type":"POST",

"dataType":"JSON",

"data":{

"loginuser":$("input[name=loginuser]").val(),

"loginpass":$("input[name=loginpass]").val()

},

"success":function(response,status,xhr){

for(variinresponse){

alert(i+"---"+response[i]);

}

},

"error":function(xhr,errorText,errorStatus){

alert("ajax访问错误:"+xhr.status+""+xhr.statusText);

}

});

服务器端代码:

header("Access-Control-Allow-Origin:*");//*号可以修改限制为IP

$arr=array("user"=>$_POST['loginuser'],"pass"=>$_POST['loginpass'],"c"=>130);

$_result=json_encode($arr);

echo$_result;

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。