【问题标题】:Get highest scores from facebook Graph API从 facebook Graph API 获得最高分
【发布时间】:2015-08-20 02:17:46
【问题描述】:

我在我的 Unity 应用程序中使用 facebook graph API。我正在尝试使用我的应用程序检索用户并显示按分数排序的前 20 个用户。

在示例项目“朋友粉碎”中,有以下图形 API 调用:

FB.API("/app/scores?fields=score,user.limit(20)", Facebook.HttpMethod.GET, ScoresCallback);

据我所知,这有 20 个用户正在使用我的应用程序。由于糟糕的图形 API 文档,我无法理解 user.limit(20) 是只返回 20 个随机用户,还是按照某些标准排序。

如果此调用返回随机用户,我是否必须为每个朋友发送一个查询,按分数对其进行排序并仅显示前 20 个以获得正确的排名? (我想这会是相当繁重的查询)

【问题讨论】:

  • 此调用返回分数递减的用户。首先得分最高的玩家,然后是其他相应的玩家。

标签: facebook facebook-graph-api unity3d


【解决方案1】:

Facebook Graph Explorer中使用以下GET请求接收有分数的朋友(降序):

app/scores?fields=score&limit=20

它应该返回以下 Json:

{
    "data": 
    [
        {
            "score": 1,
            "user": 
            {
                "name": "1st Name",
                "id": "first_id"
            }
        },
        {
            "score": 0,
            "user": 
            {
                "name": "2nd Name",
                "id": "2nd_id"
            }
        }
    ]
}

【讨论】:

    【解决方案2】:

    https://developers.facebook.com/docs/games/scores/#read-many-scores:

    您可以通过使用用户access_token/APP_ID/scores 发出HTTP GET 请求来读取该应用程序的玩家及其朋友的分数集。需要user_friends 权限才能查看朋友的分数。这将返回已授权该应用程序的玩家和朋友的分数列表。 列表按分值降序排列,因此首先返回得分最高的朋友。

    (由我突出显示。)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-21
      • 1970-01-01
      • 2012-04-26
      • 1970-01-01
      相关资源
      最近更新 更多