【问题标题】:Share post via facebook php sdk version 4.0.9, Graph API v2.0通过 facebook php sdk 4.0.9 版、Graph API v2.0 分享帖子
【发布时间】:2014-07-23 20:29:35
【问题描述】:

使用 facebook php sdk 版本 4.0.9 & Graph API v2.0

这是我发布帖子的应用程序设置。

我的代码是:

$requestjojo = new FacebookRequest($session, 'POST', '/me/feed', array('message' => 'testing'));
$responsejojo = $requestjojo->execute();

// get response
$graphObjectjojo = $responsejojo->getGraphObject()->asArray();

// print Graph data
echo '<pre>' . print_r( $graphObjectjojo, 1 ) . '</pre>';

这对我不起作用,我想知道错误在哪里。

注意:我正在从这个 sdk 正确获取用户数据(用户配置文件)。

使用echo '&lt;a href="' . $helper-&gt;getLoginUrl(array('publish_stream')).'" target="_top"&gt;Login&lt;/a&gt;';

对于登录按钮,当使用 Facebook 登录时,Facebook 也不会要求我提供此扩展权限(publish_stream)。

【问题讨论】:

  • 你在$responsejojo得到了什么?
  • 空响应。没有打印。
  • 尝试根据developers.facebook.com/docs/php/howto/postwithgraphapi/4.0.0首先重建你的代码这个例子包含一个错误处理程序,所以你可以看到可能的错误消息。
  • Stefan,编辑了登录按钮扩展权限的问题。还检查了您的建议,但仍然是相同的空响应。

标签: php facebook facebook-graph-api facebook-php-sdk


【解决方案1】:

loginUrl 没有正确构建。

 $helper->getLoginUrl(array(
    'scope' => 'publish_stream',
    'redirect_uri' => $your_redirect_uri
 ));

【讨论】:

  • [error_code] => 100, [error_message] => 无效范围。 -> 似乎不需要“范围”,因为它已经在函数中定义了。
【解决方案2】:

终于,得到了答案。

The reason is that "publish_stream" is now deprecated; use "publish_actions" instead.

发件人:

Error (#200) The user hasn't authorized the application to perform this action

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-01
    • 1970-01-01
    相关资源
    最近更新 更多