我的客户有一个电子商务网站,他们销售他们的产品,他们也有该网站的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();
}
}
输出: (#200)用户尚未授权应用程序执行此操作
答案 0 :(得分:1)
为了向页面发布内容,您需要使用应用程序对页面的管理员进行身份验证。未经身份验证,您无法发布到页面。因此,在您自动设置之前,需要进行一些用户交互。
该过程如下:
manage_pages
权限登录您的应用。/me/accounts
的API调用将为您提供访问该页面并发布更新的access_token
accesss_token
,您可以使用/{page_id}/feed
希望这有帮助。