AJAX 跨域调用 快递查询API接口

javascript默认是允许跨域操作的,比如a.com下不能操作b.com下的DOM,ajax也一样。但是javascript却允许从a.com从b.com引用js文件,JSONP正式跟据这个原理实现了跨域操作。
下面这个例子是采用jQuery框架的getJSON方法,注意必须添加callback=?参数,其中的“?”系统会自动替换。
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>JSONP调用爱查快递API</title>
<script language="javascript" src="js/jquery.js"></script>
<script language="javascript">
var _url='http://api.ickd.cn/?com=shentong&nu=468299202580&id=568AC6659ED39224A0E687698018D747&encode=utf8&type=json&callback=?';
function jsonp(){
	
	$.getJSON(_url,function(json){
			if(json.status && json.data){
				var html='<table><tr><th>时间</th><th>进度</th></tr>';
				$.each(json.data,function(i,item){
							html+='<tr><td>'+item.time+'</td><td>'+item.context+'</td></tr>';		
				});
				html+='</table>';
				$('#json_re').html(html);
			}
		}
	);
}
function a2(){
	$.ajax({
		url:_url,
		type:'get',
		dataType:'JSONP',
		success:function(data){
			alert(data);
		}
	});
}
</script>

</head>
<body>
<input type="button" onClick="jsonp()" value="测试">
<input type="button" onClick="a2()" value="测试">
<div id="json_re"></div>
</body>
</html>
测试时请直接将代码保存在本打开即可。


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值