栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > PHP

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

PHP 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

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

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

  前端JS代码: 

 $.ajax({

     "url" : "http://www.liubf.com/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 (var i  in response){

             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" : "http://www.liubf.com/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 (var i  in response){

             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;

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/227628.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号