繁体   English   中英

在javascript中从URL获取JSON数据?

[英]Fetching JSON data from a URL in javascript?

我正在尝试从http://www.xyz.com/abc.json格式的URL中检索数据。 我一直在尝试使用$ .ajax方法以下列方式实现此目的。

    var json = (function () {
        var json = null;
        $.ajax({
            'async': false,
            'global': false,
            'url': "http://www.xyz.com/abc.json.",
            'dataType': "json",
            'success': function (data) {
                json = data;
            }
        });
        return json;
    })();

但是我无法让它运行。 我需要遍历检索到的数据并检查一些特定条件。 如果json数据有一个名称,可以使用$ .getJSon轻松实现这一点,但文件格式如下:

    [{
        "name": "abc",
        "ID": 46 
    }]

因为我必须先将它转换并存储在Javascript对象变量中才能使用它。 关于我可能出错的地方的任何建议?

看起来你想要通过用{ }包装它来将该data响应转换为json对象,然后将其传递给json解析器。

function (data) {
  json = JSON.parse("{\"arr\":"+data+"}").arr;
}

然后,为了获得您的数据,它将是

json[0].name  //"abc"

所以你的问题是如何将字符串转换为Json对象? 如果您使用Jquery,您可以:

jQuery.parseJSON( jsonString );

所以你的回报应该是:

return jQuery.parseJSON( json );

你可以在这里阅读文档

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM