【问题标题】:How do I make a post using Facebook's v3 SDK and PHP?如何使用 Facebook 的 v3 SDK 和 PHP 发布帖子?
【发布时间】:2012-10-28 02:37:27
【问题描述】:

我正在尝试使用我的应用程序在用户的 Facebook 墙上发帖。我还希望之后能够访问和显示此人的用户信息 - 但我遇到了困难。

我目前的代码如下(当然敏感部分被屏蔽了):

<?php
include("src/facebook.php");

$facebook = new Facebook(array(
    'appId'  => ##############,
    'secret' => #####################################,
));

$user = $facebook->getUser();

if ($user) {
  try {
    $user_profile = $facebook->api('/me');
  } catch (FacebookApiException $e) {
    // The access token we have is not valid
    $user = null;
  }
}
if (!$user) {
    $args['scope'] = 'offline_access, read_stream, friends_likes, email, read_stream, publish_stream, user_birthday,user_hometown, user_photos, uid, username, first_name';
    $loginUrl = $facebook->getLoginUrl($args);
}
 if (!$user): ?>
    <a href="<?php echo $loginUrl ?>">Login with Facebook</a>
<?php endif ?>

我不知道出了什么问题 - 也许我错过了一些关键的东西?任何指导将不胜感激。

【问题讨论】:

    标签: php facebook facebook-php-sdk


    【解决方案1】:

    1) 请务必阅读permissions documentation。例如,offline_access 已被弃用,并且您要求的大多数权限都不存在!

    2) 要在用户墙上发帖,您需要publish_stream 权限(您已经在请求)

    3) 关注我的tutorial,以下内容将帮助您入门:

    $args = array(
        'message'   => 'Hello from my App!',
        'link'      => 'http://www.masteringapi.com/',
        'caption'   => 'Visit MasteringAPI.com For Facebook API Tutorials!'
    );
    $post_id = $facebook->api("/me/feed", "post", $args);
    

    4) 改进您的视图(在上述代码中混合 PHP 和 HTML 在编程上没有错误,但不推荐)。为了回答您的最后一个请求,$user_profile 将保存您需要的信息,只需查看 Facebook example 即可开始使用。

    5) 努力提高你的英语水平,欢迎来到 Stack Overflow!

    【讨论】:

    • 你有offline_access的解决方法吗?我需要我的应用程序在不登录用户的情况下发布到用户墙上。当然,事先授权相应的权限。谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-19
    • 1970-01-01
    相关资源
    最近更新 更多