我很抱歉这可能是论坛上的一个重复问题,但我在理解使用jquery加载jsonp的过程时遇到了很大麻烦。
我只想编写一个函数,打印出来自以下url的json数据:
http://policeapi2.rkh.co.uk/api/crimes-at-location?date=2012-02&lat=52.629729&lng=-1.131592
一个简单的示例函数太棒了!
谢谢,
- 丹
答案 0 :(得分:2)
抱歉,你不能这样做。您提到的API提供JSON,而不是JSONP。你无法以某种方式从浏览器转换为JSONP。
由于这是一个跨网站请求,您将无法从浏览器中读取JSON内容。
只有几个选项:
在您自己的服务器上(托管您的页面),建立一个加载其JSON并将其传递给您的代码的代理。使用API具有的任何服务条款,确保这没关系。
让policeapi2人员自己支持JSONP请求,或支持CORS请求。
答案 1 :(得分:1)
这是我们用jquery
加载JSONP的方法 $.ajax({
url: 'http://jsfiddle.net/echo/jsonp/',
dataType: 'jsonp',
success: function (data) {
$('body').text(data);
}
});
请记住,网址应该为jsonp提供服务,你提供的网址不会返回JSONP,所以你不能这样做。
答案 2 :(得分:0)
尝试使用JSON2.js。这是一个例子:
$.ajax({
url: 'http://policeapi2.rkh.co.uk/api/crimes-at-location?date=2012-02&lat=52.629729&lng=-1.131592',
success: function(data){
alert(JSON.stringify(data));
}
})