0

希望这不是我问的一个非常愚蠢的问题:) -

我正在尝试使用 AS3 Flash API(我看到它是 JS Api 的包装器)为我的应用程序(游戏类别应用程序)设置 score 参数,但我不断收到“(#15)这个方法必须用app access_token”错误,我还尝试使用 Graph API Explorer 进行测试调用,结果相同。(使用生成的应用程序访问令牌和复制/粘贴访问令牌)

我搜索了权限表,并为身份验证过程设置了publish_actionsuser_games_activity

获得完美的作品(我可以毫无问题地接收基本信息也可以得分信息,但它只是一个空数组可能是因为它没有设置)发布似乎是罪魁祸首

我想知道我是否做错了什么(比如我的服务器端需要一个额外的身份验证过程)

如果你们有任何想法,请帮助这变得非常令人沮丧

先谢谢了

4

1 回答 1

2

终于找到了解决办法。

这是正确的 AS3 代码:

var data:Object = new Object();
data.score = 285;
data.access_token = APP_ACCESS_TOKEN;
var requestType:String = "POST";
Facebook.api( Facebook.getAuthResponse().uid +  "/scores/" , handlePostScoreComplete, data, requestType);

您必须使用 PHP 或其他客户端 SDK 获取应用访问令牌,而不是 Javascript SDK,因为它需要应用密钥。

因此,在 PHP 中,您必须获取访问令牌,然后才能将其传递给 Flash:

<?php

$APPLICATION_ID = YOUR_APP_ID;
$APPLICATION_SECRET = YOUR_APP_SECRET;

$token_url =    "https://graph.facebook.com/oauth/access_token?" .
            "client_id=" . $APPLICATION_ID .
            "&client_secret=" . $APPLICATION_SECRET .
            "&grant_type=client_credentials";
$app_token = file_get_contents($token_url);

?>
于 2011-11-12T13:45:36.777 回答