猿问
下载APP

获取持久令牌以便从服务器发布到Facebook粉丝页面的步骤是什么?

获取持久令牌以便从服务器发布到Facebook粉丝页面的步骤是什么?

我在Facebook有一个商业页面(在Facebook俗语中称为粉丝页面)。

我希望post to that Page每当用户对我的应用程序采取某种操作时。我想发布为页面本身而不是用户(即来自我的个人帐户)。帖子将来自我的外部服务器(我正在使用restFB)。

我已经完成了使用适当manage_pages的页面权限授权我的个人帐户的步骤。我还获得了页面的访问令牌。我甚至可以按照我想要的那样发布到该页面。问题是我获得的令牌(通过他们的开发人员工具图浏览器)到期时间为一小时。我需要它比这更持久,最好永远。

我已经浏览了互联网,包括SO的答案,大多数帖子都指向可怕的FB文档或模糊引用将我的外部应用程序挂钩到Facebook应用程序并通过它发布。我已经尝试过这项工作,但我很困惑整个过程,坦率地说(例如,什么是回调地址?)。

无论如何,我希望用简单的英语逐步说明getting a long lasting access token我可以用来从一个应用程序发布到Facebook粉丝页面。

请不要参考FB文档。这很糟糕。我至少经历了十几次。

谢谢。


若吾皇
浏览 53回答 2
2回答

繁星点点滴滴

以下是您可以遵循的一些步骤,以便为您的粉丝页面获取永不过期的令牌:首先,您需要获得长期存在的用户访问令牌(在2个月内到期)。要获得此信息,请拨打以下电话:GET /oauth/access_token? grant_type=fb_exchange_token& client_id={app-id}& client_secret={app-secret}& fb_exchange_token={short-lived-token}更多细节在这里。如果你对此有任何困难,请告诉我。使用您在上面步骤中获得的令牌获取页面永不过期的访问令牌(不是普通令牌,这是主要区别):$facebook->api("/PAGE_ID?fields=access_token");因此,概念是,为了获得长期存在的页面令牌,您应该在进行调用时使用长期存在的用户令牌。

陪伴而非守候

只是为了完成工作流程:使用facebook登录和manage_pages权限获取短期用户access_token 。将此短期用户access_token发送到您的服务器从服务器,发出@Shadowfax请求:GET /oauth/access_token? grant_type=fb_exchange_token&client_id={your-app-id}& client_secret={your-app-secret}&fb_exchange_token={short-lived-user-access_token}与主机graph.facebook.com和端口443。您必须从服务器发出此请求,因为它包含您的应用程序密钥。从服务器,您现在可以通过使用此长版本替换用户access_token来查询facebook从服务器,通过使用您的长期用户access_token获取页面access_token,方法是查询用户帐户:GET /{user-id}/accounts?access_token={long-live-token}您将获得其id和access_token的所有用户页面。或者,如果您已经知道其page_id,则可以直接查询特定页面GET /{page-id}/?fields=access_token&access_token={long-live-token}正如@Shadowfax所说,只要用户(您)没有撤销您的应用程序权限,此页面的长期令牌将永久持续。
打开App,查看更多内容
随时随地看视频慕课网APP
我要回答