1

我的客户有一个电子商务网站,他们在那里销售他们的产品,他们也有该网站的 Facebook 页面。当产品价格降低或新产品推出时,我想在该页面上发布墙贴。但我想让这个自动,所以我想授权 facebook 自动,这意味着我不想要任何登录对话框。脚本应该自己授权。现在我使用的代码如下,但它要求我登录。并告诉我哪种方法好(容易)发布页面墙帖子?

require 'API_Library/Facebook/src/facebook.php';
 $page_id = '111111111111111';
 $appId = '111111111111111';
 $appSecret = 'aaaaaaaaaaaaaaaaaaaaa22222222222';

 $facebook = new Facebook(array(
             'appId' => $appId,
             'secret' => $appSecret,
             'cookie' => true
         ));
 $session = $facebook->getAccessToken();

 $me = NULL;

 if($session)
 {
     try
     {
         $me = $facebook->api('/me');
         $facebook->api('me/feed', 'post', array(
             'message' => 'Hello World!'
         ));
     }
     catch(FacebookApiException $e)
     {
         echo $e->getMessage();
     }
 }

OUTPUT: (#200) 用户尚未授权应用程序执行此操作

4

1 回答 1

1

为了向页面发布内容,您需要页面管理员通过应用程序进行身份验证。未经身份验证,您无法发布到页面。因此,在您可以自动设置之前,需要进行一些用户交互。

该过程如下:

  1. 设置 Facebook 应用程序以获取应用程序 ID 和应用程序密码 - 您将需要它来查询 API 并将更新发布到页面
  2. 作为页面管理员,使用manage_pages权限登录您的应用程序。
  3. 登录后,API 调用/me/accounts将为您提供access_token访问页面和发布更新的权限
  4. 使用页面的accesss_token,然后您可以使用 POST 更新/{page_id}/feed

希望这可以帮助。

于 2012-10-09T10:41:35.857 回答