我的公司有一个企业Facebook帐户,他们在不同的专辑中发布活动照片。 我的要求是从Facebook专辑中获取所有照片并在我们的公司网站上显示。我可以获取照片,但用户访问令牌仅在60天内有效,这意味着每隔两个月我将必须登录公司的公司Facebook帐户,重新生成令牌并在我的应用程序中更新令牌。
有没有办法生成永久访问令牌? 或者以任何方式在我的应用程序级别重新生成令牌(不显示登录对话框)?
有没有其他方法可以在不创建应用的情况下获取照片?
答案 0 :(得分:2)
您的问题是关于用户访问令牌。我担心这些永远不会永久。但是,从您与Igy的讨论中,您似乎满足于获取页面访问令牌。在那里看我的Q / A:
facebook: permanent Page Access Token?
/{pageId}?fields=access_token
的查找图API,使用具有manage_pages
权限的用户访问令牌。生成的页面访问令牌应该是永久性的。
答案 1 :(得分:2)
转向Oauth 2.1 它实际上更简单 - 使用您的App ID + App Secret作为访问令牌 然后,您可以通过https://graph.facebook.com/v2.1/theO2/feed?access_token=app_id|app_secret
访问Feed(等)(来自Facebook documentation on Access Tokens)
还有另一种方法可以调用Graph API,不需要使用生成的应用令牌。您可以在拨打电话时将app id和app secret作为access_token参数传递:
http://graph.facebook.com/endpoint?key=value&access_token=app_id|app_secret 使用生成的访问令牌与此方法的选择取决于您隐藏应用程序密钥的位置。
答案 2 :(得分:0)
您是否应该能够将页面访问令牌用于Facebook页面本身?让其中一个管理员授予您的应用manage_pages权限,然后使用页面访问令牌从页面检索照片 - 如果通过服务器端oauth进程检索,页面访问令牌将不会过期
开发人员文档中有logging in as a page的详细指南 -