【问题标题】:Parsing Facebook Graph API response解析 Facebook Graph API 响应
【发布时间】:2013-05-29 01:50:59
【问题描述】:

我正在为一个 Android 应用程序开发 Facebook 分数 API。我通过访问用户图来查询用户分数:

https://graph.facebook.com/user_id/scores&access_token={user_access_token}

我收到如下回复:

{
 "data": [
{
  "user": {
    "name": "Michał Szydłowski", 
    "id": "100001699654797"
  }, 
  "score": 1200, 
  "application": {
    "name": "QuizzlePeople", 
    "namespace": "quizzlepeople", 
    "id": "176694722487191"
  }
}, 
{
  "user": {
    "name": "Michał Szydłowski", 
    "id": "100001699654797"
  }, 
  "score": 1, 
  "application": {
    "name": "Friend Smash!", 
    "namespace": "friendsmashsample", 
    "id": "480369938658210"
  }
}, 
{
  "user": {
    "name": "Michał Szydłowski", 
    "id": "100001699654797"
  }, 
  "score": 0, 
  "application": {
    "name": "Wordox", 
    "namespace": "wordox-the-game", 
    "id": "227993680602156"
  }
}, 
{
  "user": {
    "name": "Michał Szydłowski", 
    "id": "100001699654797"
  }, 
  "score": 0, 
  "application": {
    "name": "SongPop", 
    "namespace": "songpop", 
    "id": "323595464361460"
  }
 }
]
}

如何从中提取有用的数据?

我正在尝试将某些东西作为 JSONObject,使用:

    HttpClient client = new DefaultHttpClient();                
        HttpGet get = new HttpGet("https://graph.facebook.com/me?fields=score&access_token=" + token);
        HttpResponse resp = client.execute(get);        
        Log.i("info1", resp.toString());
        // Parse the response
        HttpEntity responseEntity = resp.getEntity();
        String response = EntityUtils.toString(responseEntity);
        Log.i("info1", response);
        JSONObject result = new JSONObject(response);
        JSONArray arr = result.getJSONArray("data");
        Log.i("info2", arr.toString());

只是想看看我能不能拿走任何东西,比如名为“数据”的数组。然而,logcat 并没有显示任何东西。它显示前 2 个日志,但不显示第 3 个。有什么想法吗?

【问题讨论】:

  • 为什么不使用 Facebook 的 SDK?这样,示例代码将向您准确展示如何操作
  • 我确实使用它。但是你想到了什么示例代码?

标签: java android facebook api


【解决方案1】:

这看起来像 JSONObject。你可以遍历它并对数据做任何你想做的事情。 查看http://json.org/ 以获取特定语言的文档(我认为您需要 java,因此请单击 java 链接)。

我将数据附加到一个表中给你一个想法(jquery / javascript):

fiddle:http://jsfiddle.net/H8LNB/4/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-07-21
    • 2023-01-29
    • 2020-05-20
    • 2015-08-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多