2011-05-01 52 views
0

基本上我有一个网络应用程序将发布链接到Facebook页面(不是简介)墙。在没有用户身份验证的情况下发布Facebook页面链接

据我所知我需要一个永久令牌来做到这一点。 Twitter给我一个直接的帐户,所以我希望Facebook有类似的东西。但是,我获得manage_pages许可的令牌已过期。

从这个认证文档是我一直在做:

请求令牌管理页面:

https://www.facebook.com/dialog/oauth?client_id=123456789123&redirect_uri=http://myapp.com/fb&scope=manage_pages&response_type=token 

得到令牌回来,我打算将它粘贴到我的应用程序配置的网址:

http://myapp.com/fb#access_token=123123123123123%7C2.18VYbalblablablaswhg__.3600.1304294400.1-615173155%7CTzb_U9ma0LIPJXNzqsZ_xUJpfn8&expires_in=4205

当我真正尝试张贴到这个页面,我得到一个过期的错误。

$post_params = array(
'access_token' => self::$page_token, 
'message' => $string 
); 
$response = $fb_app->api('/'.self::$page_id.'/feed','POST', $post_params); 

回答

1

您需要获得永久令牌的offline_access权限。 如果您打算将其作为页面本身发布,则需要从该页面的/ USER_ID /帐户获取该令牌,否则将从您的配置文件发布。如果你不打算作为页面发布,你实际上不需要manage_pages权限,publish_stream对于用户来说就足够了。祝你好运。

+0

它确实弹出一个页面要求永久访问。但是,当我尝试使用从/ me/accounts获取的页面访问令牌发布到页面墙时,我遇到了#200错误(未授权)。 – Keyo 2011-05-02 02:07:45

+0

啊,我还需要有publish_stream。所以在范围参数中我现在有'publish_stream,offline_access,manage_pages'。 – Keyo 2011-05-02 02:11:23

相关问题