php – 无法在Facebook上发布玩家时间表的高分

前端之家收集整理的这篇文章主要介绍了php – 无法在Facebook上发布玩家时间表的高分前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在开发一个 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'];
 }
?>

当然,我已经省略了一个登录和安装部分,要求用户登录并向应用程序授予“publish_stream”和“publish_actions”权限.

这是成功的工作,响应变量输出1.
我可以使用Facebook Graph API Explorer查看已发布的分数,所以我认为一切都是正常工作.

问题在于,我无法在Facebook上任何地方看到所谓的用户故事.
阅读在我看来,一个用户故事必须自动发布,当一个保存一个分数的文档.例如,看看herehere.

有人解决了这个问题吗?你看到我可能会失踪的东西吗?你能指出我正确的方向来解决这个问题吗?

任何帮助将高度赞赏.

你写

Reading the documentation it seems to me that a user story has to be automatically published when one saves a score.

得分不会自动发布.它们仅在某些条件下发布,即当用户

>获得新的高分(“高分故事”).
>传递另一个朋友的分数(“传递故事”).

在你的代码中,你每次发布1500分.第一次发布之后,当您再次重复发布测试时,您的帖子请求将会成功,但不会再次发布评分,因为它不是一个新的高点.

资料来源:
Facebook Developers: Games Tutorial.Facebook Developers Developer Blog: Games Update: Expanding distribution for Scores and Achievements

猜你在找的PHP相关文章