getJSON响应的问题
Problem with getJSON response
我对$有一些问题。Chrome中getJSON响应
查询是
$.getJSON("http://www.askgeo.com/api/428014/sf2t36ujv1tsf325t5734gstr4/timezone.json?callback=?&points=55.77184,37.623553",
function(json){
<some code>
}
);
如果你点击这个链接你会得到一个json文本。
当我运行这个查询Chrome显示一个错误:
资源被解释为脚本,但以MIME类型application/json传输
SyntaxError: Unexpected token: timezone.json:1
是否尝试将json响应转换为JavaScript对象?如果是这样,为什么它不能这样做呢?有什么办法可以解决这个问题吗?
在Chrome调试器中,我发现了文件"timezone。
{"code":0,"message":"ok","data":[{"timeZone":"Europe/Moscow","currentOffsetMs":14400000,"latitude":55.77184,"longitude":37.623553}]}
请求数据的服务器没有设置为返回JSONP。因此,您需要构建某种代理来为您获取数据,或者使用YQL。
编辑:如果您要使用YQL,这是您将使用的url:
http://query.yahooapis.com/v1/public/yql?q=SELECT%20*%20FROM%20json%20WHERE%20url%3D%22http%3A%2F%2Fwww.askgeo.com%2Fapi%2F428014%2Fsf2t36ujv1tsf325t5734gstr4%2Ftimezone.json%3Fpoints%3D55.77184%2C37.623553%22&format=json&diagnostics=true
关于如何生成url的信息,请访问:
http://developer.yahoo.com/yql/console/h =选择% 20 * % 20从% 20 json % 20 % 20 % 3 d % 22 http url % 3//www.askgeo.com/api/428014/sf2t36ujv1tsf325t5734gstr4/timezone.json%3Fpoints%3D55.77184%2C37.623553%22
你可以在底部找到url。
使用YQL: http://jsfiddle.net/JGwU3/1/
然而,使用YQL有一个怪癖。如果结果只包含一个结果,它的内容是一个对象,但是,如果它是多个,它的内容将是一个数组。您可以通过控制台看到不同之处。记录响应在API文档中,它说,您应该在单独的JSON对象中提供查询参数作为第二个参数。
$.getJSON('http://www.askgeo.com/api/428014/sf2t36ujv1tsf325t5734gstr4/timezone.json', {'callback':'', 'points': '55.77184,37.623553'}, function(json) {
alert(json.data[0].timeZone);
});
工作正常,当我测试它。
(这完全忽略了JSONP)
EDIT
好吧,我的帖子是错误的,这是一个JSONP问题。关于如何从URL中检索数据,请参阅jQuery文档页面:http://api.jquery.com/jQuery.ajax/
- RubyonRails-Ajax响应的问题
- Http响应拆分安全问题的XMLHTTPRequest/Response用例的Filter实现
- 响应菜单问题-如何在移动环境中处理HREF和onclick事件
- node.js+MySQL;JSON结果-回调问题&没有响应客户端
- 响应出现JSON格式问题
- 位置问题:固定和响应/自适应布局
- 如何解决等待多个请求以javascript发送响应的问题
- 分析JSON响应时出现问题
- Javascript随机名称猜测者:无响应的脚本问题
- 响应式 d3 图形的问题
- 创建响应 html 表时出现的问题
- 绘制图表.js包含 ajax 数据和响应式.一些问题和疑问
- Vis图形库,Twitter引导的响应式设计问题
- 响应问题 JQzoom
- 有关在 $.get() 中获取响应的问题
- Internet Explorer Ajax 调用,缓存响应问题
- 获得响应时出现问题
- 覆盖在“背景大小:包含”上的响应式 DIV - 解决警报触发的问题
- XMPP BOSH 响应问题
- 2个问题-响应式设计与Bootstrap &;固定了页面底部的箭头