【问题标题】:Facebook and php - how to post content from my site to my facebook wall?Facebook 和 php - 如何将内容从我的网站发布到我的 Facebook 墙?
【发布时间】:2011-06-01 23:11:32
【问题描述】:

我对这个 facebook api 感到很困惑。

我的数据库中有 facebook 用户名和密码,我想在我的网站上签名并将内容发布到我的 facebook 墙上。我该怎么做?

我已经下载了 facebook-php-sdk,只需要能够在我的 php 文件中包含“post”部分就可以了,我现在有这段代码

require_once ('facebook.php');
                $app_id = "MY_ID";
                $app_secret = "MY_SECRET";
                $facebook = new Facebook(array('appId' => $app_id, 'secret' => $app_secret, 'cookie' => true));

                if(is_null($facebook->getUser())) {

                    header("Location:{$facebook->getLoginUrl(array('req_perms' => 'user_status,publish_stream,user_photos'))}");
                    exit;
                } 

                $status = $facebook->api('/me/feed', 'POST', array('message' => utf8_encode($my_message)));

有了这个我只是得到一个内部服务器错误,没有更多的知道我做错了什么......

即使使用 var_dump($status) 我什么也得不到 谢谢

【问题讨论】:

  • 检查您的 php 错误日志。您可能会收到错误消息。
  • 如果这是复制和粘贴而没有根据您的需要进行编辑,那么这些变量 ($my_message) 将不包含任何内容。希望您已将 MY_ID 替换为“您的 ID”,将 My_SECRET 替换为 Facebook 生成的“密钥”?
  • 我确实更改了我的 ID 和我的秘密 :-)

标签: php facebook


【解决方案1】:

您无法在 Facebook Graph API 上以用户身份登录。首先,您不应该询问任何用户的 Facebook 密码,这就是 Facebook 不允许这样做的原因。

API 允许您以“应用程序”的身份登录,Facebook 用户可以授予该应用程序权限。您需要在https://www.facebook.com/developers/apps.php 创建一个 Facebook 应用程序。

完成此操作后,您可以提示用户在他们的墙上发帖或使用 Graph API 使用 http://developers.facebook.com/docs/reference/dialogs/feed/

【讨论】:

  • "你可以提示用户在墙上发帖" 你好,在墙上我的应用程序?不,我想在用户墙上发帖,基于是电子邮件/密码,这是一种博客,如果用户也想发布到 facebook,他选中一个复选框,其余的由 php 完成,这是我的意图跨度>
  • 是的,它发布到用户墙。请阅读我发送的第二个链接的第一行。此外,如果您向下滚动该链接,您会发现如何使用 Graph API 执行此操作。
  • 不是我想要的...我不是要密码,用户输入的是密码,我的数据库里只有我的:-)
  • 那你想要什么?该代码可以发布到用户自己的墙上。你的意思是你不是要求输入密码,而是用户输入密码?
  • 然后使用javascript去除你的HTML标签。
【解决方案2】:

首先尝试(我希望你输入了你的 $app_id 和 $app_secret):

require_once ('facebook.php');
$app_id = "MY_ID";
$app_secret = "MY_SECRET";
$facebook = new Facebook(array('appId' => $app_id, 'secret' => $app_secret, 'cookie' => true));
$user = $facebook->getUser();

var_export($user);

如果您正确登录,您应该查看数据。

您也许应该查看此页面以获取示例Facebook Graph API PHP SDK posting on page as page

【讨论】:

  • 好的,现在我得到了 0 结果,仅此而已。也许是一个愚蠢的问题,我有 app_id 和 secret_key,它们来自我要在 facebook 中创建的应用程序。现在,我想在我的墙上发帖,那么,我的用户名 (my_email@me.com) 和密码应该放在哪里?我的意思是,如果我有 3 个 facebook 帐户,我只需要更改这些电子邮件 - 密码值而不是 app_id 和密码。我真的很困惑
  • 您可以通过在 grant_type 参数中指定您的应用程序 ID、应用程序密钥和 client_credentials 从位于 graph.facebook.com/oauth/access_token 的 Graph API 令牌端点获取应用程序访问令牌。在开发者应用程序中创建应用程序时,会生成应用程序 ID 和应用程序密码。在这里阅读更多:developers.facebook.com/docs/authentication
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-10-09
  • 1970-01-01
  • 2015-02-21
  • 2014-06-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多