Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/253.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php FB Graph API发布到我的一个页面的墙上_Php_Facebook_Api_Session_Facebook Graph Api - Fatal编程技术网

Php FB Graph API发布到我的一个页面的墙上

Php FB Graph API发布到我的一个页面的墙上,php,facebook,api,session,facebook-graph-api,Php,Facebook,Api,Session,Facebook Graph Api,我不明白FB的API是非常愚蠢还是我的API感知不适合这个。我的目标很简单。我有一个CMS。当我从CMS的管理页面创建新闻时,我也想将其发布到我的facebook页面。这让我恼火! 这是我的密码 $s = FacebookSession::setDefaultApplication('appid', 'secret'); $session = FacebookSession::newAppSession(); // when I use belowed two line, I'm getti

我不明白FB的API是非常愚蠢还是我的API感知不适合这个。我的目标很简单。我有一个CMS。当我从CMS的管理页面创建新闻时,我也想将其发布到我的facebook页面。这让我恼火! 这是我的密码

$s = FacebookSession::setDefaultApplication('appid', 'secret'); 
$session = FacebookSession::newAppSession();

// when I use belowed two line, I'm getting error
//$request = new FacebookRequest($session, 'GET', '/me'); 
//$pageList = $request->execute()->getGraphObject()->asArray(); 
$session = new FacebookSession('I don't know what to write here? I have a session already? When I use the access token which taken from api explorer page, due to it's life is short, I'm getting also error.'); 
$page_post=(new FacebookRequest( $session, 'POST','/<my_page_id_not_my_profile_id>/feed', array(
                    'access_token' => 'die!!! one more token! what is this!',
                    'link' => 'link',
                    'message' => 'message', ) ))->execute()->getGraphObject()->asArray();
$s=FacebookSession::setDefaultApplication('appid','secret');
$session=FacebookSession::newAppSession();
//当我使用下面的两行时,我得到了错误
//$request=newfacebookrequest($session,'GET','/me');
//$pageList=$request->execute()->getGraphObject()->asArray();
$session=new FacebookSession('我不知道在这里写什么?我已经有一个会话了?当我使用从api explorer页面获取的访问令牌时,由于它的生命很短,我也会收到错误');
$page_post=(新的facebook请求($session,'post','//feed',数组(
“访问令牌”=>“死!!!再来一个令牌!这是什么!”,
“链接”=>“链接”,
'message'=>'message',))->execute()->getGraphObject()->asArray();

注意:我不希望弹出窗口登录或任何其他方法。我只想要一个像推特一样甜美使用的天真API。

Facebook API的工作原理与推特非常相似。你也不能只在Twitter上发布一个应用程序会话,你需要授权一个用户


因为Facebook上有用户配置文件和页面,所以有用户访问令牌和页面访问令牌。您需要的是页面访问令牌,您可以通过授权应用程序的用户获取用户令牌并调用端点获取您管理的所有页面的页面令牌来获取页面访问令牌。此外,您还需要向用户授予
publish\u actions
manage\u pages
权限。之后,您可以使用带有该页面标记的端点“作为页面”发布到您的页面墙

下面是关于访问令牌的更多信息,您需要的是一个永久的“扩展页面令牌”:


“您需要的是一个页面访问令牌…”此令牌寿命很短。我想,我可以通过在代码中动态调用另一个请求而不是复制粘贴来将它放入会话中。不,正如我所写的,扩展页面标记永远有效。查看链接以获取有关如何创建扩展的链接的信息。