jQuery使用JSONP实现跨域获取数据的三种方法详解
本文实例讲述了jQuery使用JSONP实现跨域获取数据的三种方法。分享给大家供大家参考,具体如下:
第一种方法是在ajax函数中设置dataType为'jsonp'
$.ajax({ dataType:'jsonp', url:'http://www.a.com/user?id=123', success:function(data){ //处理data数据 } });
第二种方法是利用getJSON来实现,只要在地址中加上callback=?参数即可
$.getJSON('http://www.a.com/user?id=123&callback=?',function(data){ //处理data数据 });
第三种方法是使用getScript方法
//此时也可以在函数外定义foo方法 functionfoo(data){ //处理data数据 } $.getScript('http://www.a.com/user?id=123&callback=foo');
实例演练:
index.html
jsonp
jsonp.php
$data["age"]=$_GET['age']; $data["name"]=$_GET['name']; $data["statusCode"]="200"; $data["message"]="成功"; $tmp=json_encode($data);//json数据 echo$callback.'('.$tmp.')';//返回格式,必需 ?>
PS:关于json操作,这里再为大家推荐几款比较实用的json在线工具供大家参考使用:
在线
JSON在线格式化工具:
http://tools.jb51.net/code/jsonformat
在线XML/