【问题标题】:Facebook looping through returned JSON Open Graph requestFacebook 循环通过返回的 JSON Open Graph 请求
【发布时间】:2013-05-16 22:13:14
【问题描述】:

我目前通过 JSON 请求 Open Graph url,如下所示:

https://graph.facebook.com/me/friends?fields=email,likes,name,birthday,location,website&access_token=$token

我的 JSON 请求成功,但我的问题是实际循环返回的数据,以便我可以在我的页面上列出它。

我尝试了以下方法:

$('#goButton').click(function () {

        //Call the JSON feed from the Open Social Graph.
        $.getJSON("https://graph.facebook.com/me/friends?fields=email,likes,name,birthday,location,website&access_token=" + savedFbToken + "&callback=?",
              //Once it is returned, do something with the JSON:
              function (data) {

                console.log(data);
                  //Clear out the placeholder
                  $('#Placeholder').html("");
                  //Add some new data
                  $('#Placeholder').append("<h1>Name:</h1>" + data.name + "");
                  $('#Placeholder').append("<span>Birthday: "+ data.birthday +"</span><br/>");
                  $('#Placeholder').append("<span>Location: "+ data.location +"</span><br/>");
                  $('#Placeholder').append("<span>Id: "+ data.id +"</span><br/><br/>");
              });
    });

返回的格式如下:

{
   "data": [
      {
         "name": "Name 1",
         "birthday": "10/08/1983",
         "location": {
            "id": "110343502319180",
            "name": "Copenhagen, Denmark"
         },
         "id": "263901486"
      },
      {
         "name": "Name 2",
         "birthday": "02/16/1982",
         "location": {
            "id": "110398488982884",
            "name": "Reykjav\u00edk, Iceland"
         },
         "id": "502533736"
      },
    etc...

关于如何正确循环的任何建议?

【问题讨论】:

    标签: javascript jquery json facebook-graph-api jsonp


    【解决方案1】:

    data 实际上包含一个对象,其中包含一个对象数组,也称为数据,因此您需要循环遍历它

    $('#Placeholder').html("");
    
    for( var i = 0; i < data.data.length; i++ ){
     //Add some new data
     $('#Placeholder').append("<br />");
     $('#Placeholder').append("<h1>Name:</h1>" + data.data[i].name + "");
     $('#Placeholder').append("<span>Birthday: "+ data.data[i].birthday +"</span><br/>");
     $('#Placeholder').append("<span>Location: "+ data.data[i].location +"</span><br/>");
     $('#Placeholder').append("<span>Id: "+ data.data[i].id +"</span><br/><br/>");
    }
    

    【讨论】:

    • 太棒了——这很简单!非常感谢:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多