各位哥们、姐们,请教下社区一个URL地址的作用是什么?分析目的不是为了干坏事,只是想知道为什么这样传参以及作用,哈哈 URL如下
http://x..com/event/check?callback=jQuery180036009943298995495_1373334946224&sfsess=51db660633b67.50b8b483aab9b35c108fe65c431db831&_=1373334976439
不明白传入 callback=jQuery
这个健值的含义,这是要动态生成一段js代码麼?
请求这条URL返回
jQuery180036009943298995495_1373334946224({"status":0,"data":0})
小弟欲盾求解惑,还有一条URL:
http://.com/api/tag?sfsess=51db660633b67.50b8b483aab9b35c108fe65c431db831&do=show&id=1040000000089431
这条URL倒是看明白了返回id为 1040000000089431
的标签json对象
疑惑的是在给网站做类似api的时候思路大致是怎样的,应该注意那些?
希望大神看到,能分享你的宝贵经验,助各位在这个神奇的国度身体都健康,
为天朝的互联网发展分享你的经验,哈哈
这种技术叫做jsonp,浏览器的安全策略会禁止a.com上的js向b.com来发送数据,但是有时候又必须要这样做,jsonp就是来绕过它的。
实现原理是动态的在dom上添加一个script标签,script的src就是您的这个url。 服务器端接口也需要做一些改动以支持jsonp,返回的数据不再是一个纯json对象。 最终dom上的结果类似于这样的:
<script src='xxxxx?callback=jquery123456'>
//src对应的文件内容是
jquery123456(json);
</script>
然后jquery123456这个function就可以获取到json了。 jquery对这个进行了封装,这个jquery123456是一个动态生成的function,作用是获取到json数据之后,再传给你的callback。
jQuery.getJSON(url, [data], [callback])
返回值:XMLHttpRequest
概述
通过 HTTP GET 请求载入 JSON 数据。
在 jQuery 1.2 中,您可以通过使用JSONP形式的回调函数来加载其他网域的JSON数据,如 "myurl?callback=?"。jQuery 将自动替换 ? 为正确的函数名,以执行回调函数。 注意:此行以后的代码将在这个回调函数执行前执行。
参数 url,[data],[callback]String,Map,FunctionV1.0url:发送请求地址。
data:待发送 Key/value 参数。
callback:载入成功时回调函数。
示例
描述: 从 Flickr JSONP API 载入 4 张最新的关于猫的图片。
HTML 代码:
<div id="images"></div>
jQuery 代码:
$.getJSON("http://api.flickr.com/services/feeds/photos_public.gne?tags=cat&tagmode=any&format=json&jsoncallback=?", function(data){
$.each(data.items, function(i,item){
$("<img/>").attr("src", item.media.m).appendTo("#images");
if ( i == 3 ) return false;
});
});