我正在尝试将google页面中的财务信息读入json对象。
代码如下:
try {
$.getJSON("http://finance.google.com/finance/info?client=ig&q=NSE:GOLDBEES&jsoncallback=?",function(data){
alert(data);//var jsondata = data;
//jsonobj = $.parseJSON(jsondata);
//alert(jsonobj[0].id);
});
} catch(e) {
alert(e.toString());
}
然而,我一直在使用firebug
时出现此错误 invalid label
"id": "4052464"
是否可以阅读此信息。我的最终目标是创建一个不使用服务器端脚本的Windows 7小工具,可以在任何Windows 7系统中使用。
感谢所有帮助。
约翰
答案 0 :(得分:2)
响应无效JSON(响应带有前缀//),因此无论如何jQuery都无法正确解析它。
将&jsoncallback=?
更改为&callback=?
所以
$.getJSON("http://finance.google.com/finance/info?client=ig&q=NSE:GOLDBEES&callback=?", function(data) {
alert(data)
});
答案 1 :(得分:0)
response from Google有两个前导/
,使得回复无效JSON ... for some reason。
因此,您无法使用jQuery.getJSON
,因为它需要JSON响应。相反,您应该使用jQuery.get
,并在删除两个前导斜杠后自行解析JSON。
jQuery.get('http://finance.google.com/finance/info?client=ig&q=NSE:GOLDBEES&jsoncallback=?', function (string) {
var validJson = string.slice(2);
var obj = jQuery.parseJSON(validJSON);
// use obj
});
还有两点:
jsoncallback=?