发布facebook api不作为页面

发布facebook api不作为页面,facebook,facebook-graph-api,Facebook,Facebook Graph Api,我已经制作了facebook应用程序,获得了appID和secret,我正在尝试将其作为页面发布到一个页面。我已授予应用程序权限 但当我发帖时,新帖子创建的是“作为用户”,而不是页面 我的代码: require '../lib/fb/autoload.php'; use Facebook\FacebookSession; use Facebook\FacebookRequest; use Facebook\GraphUser; use Facebook\FacebookRequestExcep

我已经制作了facebook应用程序,获得了appID和secret,我正在尝试将其作为页面发布到一个页面。我已授予应用程序权限

但当我发帖时,新帖子创建的是“作为用户”,而不是页面

我的代码:

require '../lib/fb/autoload.php';

use Facebook\FacebookSession;
use Facebook\FacebookRequest;
use Facebook\GraphUser;
use Facebook\FacebookRequestException;

FacebookSession::setDefaultApplication('APP_ID','SECRET');

$session = new FacebookSession('ACCESS_TOKEN');


try {
  $response = (new FacebookRequest(
            $session, 'POST', '/1429642034012499/feed', array(
                'message'       => 'test',
                'link'          => 'http://mylink',
            )
        ))->execute()->getGraphObject();

        print_r($response);
} catch (FacebookRequestException $e) {
   echo "Exception occured, code: " . $e->getCode();
        echo " with message: " . $e->getMessage();

} catch (\Exception $e) {

}
查看。

此答案适用于C#,使用.NET Facebook API库。但PHP中的逻辑应该是相同的

您必须获得页面访问令牌:

点击这里:developers.facebook.com/tools/

然后转到此链接:

然后单击:“
获取访问令牌

然后添加以下权限:

然后复制新的访问令牌:

现在在C#类中,我做了(这是作为页面发布评论):

var userClient = new FacebookClient("THE NEW ACCESS TOKEN YOU JUST GENERATED");

dynamic accountInfo = userClient.Get("USER_ID" + "/accounts"); 

//USER_ID Should be Digits, this is the UserID when you do: facebook.com/USERID it should come up with the Admin Profile

var pageAccessToken = accountInfo.data[0].access_token;

var pageClient = new FacebookClient(pageAccessToken);

dynamic parameters = new ExpandoObject();
parameters.message = model.Message;

dynamic pageResult = pageClient.Post(string.Format("{0}/comments",), parameters);