3

我想知道如何使用YQL获取 JSON 数据。

这是我的 JSON 网址:

https://www.facebook.com/feeds/page.php?id=397319800348866&format=json
4

2 回答 2

6

这是一个使用 jQuery 的快速示例,它可能会对您有所帮助

$(function () {
    $.ajax({
        url: "http://query.yahooapis.com/v1/public/yql",
        dataType: "jsonp",
        success: function (data) {
            console.log(data.query.results.json);
            $.each(data.query.results.json.entries, function (i, v) {
                //console.log(data.query.results.json.entries[i]);
                $('#entries').append(data.query.results.json.entries[i].title + '<br />');
            });
        }, data: {
            q: 'select * from json where url="https://www.facebook.com/feeds/page.php?id=397319800348866&format=json"',
            format: "json"
        }
    });
});

在带有上述 url 的 console.log 中,我能够得到以下结果:

entries: Array[29]
icon: "http://www.facebook.com/favicon.ico"
link: "http://www.facebook.com/"
self: "https://www.facebook.com/feeds/page.php?id=397319800348866&format=json"
title: "Doers Inc's Facebook Wall"
updated: "2012-12-19T01:08:44-08:00"

工作示例供参考:http: //jsfiddle.net/DtNxb/1/

于 2012-12-19T09:13:35.137 回答
2

如果您使用jQuery.getJSON ,这比您想象的要容易。

试试这个:

$.getJSON("http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20html%20where%20url%3D%22your_url&format=json",
          function(data) {
              var id = data.query.results.div;
              $('#table').append('<li>'+id.h1+'</li>');
              $('#table').listview('refresh');
          }
);

这里有一个简单的演示

于 2012-12-19T09:10:16.413 回答