我尝试从 Wikipedia 获取一些 JSON 内容:
$.getJSON("http://en.wikipedia.org/w/api.php?action=query&prop=revisions&rvprop=content&titles="+title+"&format=json", function(data) {
doSomethingWith(data);
});
但我没有得到任何回应。如果我粘贴到浏览器的地址栏,类似
http://en.wikipedia.org/w/api.php?action=query&prop=revisions&rvprop=content&titles=jQuery&format=json
我得到了预期的内容。怎么了?
您需要触发 JSONP 行为$.getJSON() http://api.jquery.com/jQuery.getJSON/通过增加&callback=?
在查询字符串上,如下所示:
$.getJSON("http://en.wikipedia.org/w/api.php?action=query&prop=revisions&rvprop=content&titles="+title+"&format=json&callback=?", function(data) {
doSomethingWith(data);
});
你可以在这里测试一下 http://jsfiddle.net/nick_craver/FPhcr/.
如果不使用 JSONP,你就会遇到同源策略 http://en.wikipedia.org/wiki/Same_origin_policy这会阻止 XmlHttpRequest 取回任何数据。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)