Hob*_*Cat 10 php facebook facebook-graph-api
我正在开发一款PHP游戏,并希望将玩家的高分发布到他们自己的Facebook墙/时间线上.
我已经设置了一个Facebook应用程序和我用来发布得分的PHP代码(由Facebook本身提供):
<?php
require 'facebook-sdk/facebook.php';
$app_id = MY_APP_ID;
$app_secret = MY_APP_SECRET;
$score = 1500; // this is gonna be passed someway...
$facebook = new Facebook(array(
'appId' => $app_id,
'secret' => $app_secret,
));
$user = MY_USER_ID; // to be replaced with a call to $facebook->getUser()
$app_access_token = get_app_access_token($app_id, $app_secret);
$facebook->setAccessToken($app_access_token);
$response = $facebook->api('/' . $user . '/scores', 'post', array(
'score' => $score,
));
print($response);
// Helper function to get an APP ACCESS TOKEN
function get_app_access_token($app_id, $app_secret) {
$token_url = 'https://graph.facebook.com/oauth/access_token?'
. 'client_id=' . $app_id
. '&client_secret=' . $app_secret
. '&grant_type=client_credentials';
$token_response =file_get_contents($token_url);
$params = null;
parse_str($token_response, $params);
return $params['access_token'];
}
?>
Run Code Online (Sandbox Code Playgroud)
当然,我已经省略了一个登录和安装部分,要求用户登录并授予应用程序" publish_stream'和' publish_actions'权限.
这是成功的,响应变量输出1.我可以使用Facebook Graph API Explorer查看发布的分数,所以我假设一切都工作得很好和顺利.
问题是我无法在Facebook上的任何地方看到所谓的用户故事.在阅读文档时,在我看来,当用户保存分数时,必须自动发布用户故事.例如,看看这里或这里.
有没有人解决过这个问题?你看到我可能遗失的东西吗?能否指出我正确的方向来解决这个问题?
任何帮助将受到高度赞赏.
你写
阅读文档后,我觉得保存分数时必须自动发布用户故事。
分数不会自动发布。它们仅在某些条件下发布,即当用户:
在你的代码中,你每次发布的分数都是 1,500。第一次发布后,当您再次重复发布测试时,您的发布请求会成功,但分数不会再次发布,因为它不是新高。
来源:
Facebook 开发者:游戏教程。
Facebook 开发者开发者博客:游戏更新:扩大分数和成就的分配