在没有用户交互的情况下发布到 Facebook 页面

Posted

技术标签:

【中文标题】在没有用户交互的情况下发布到 Facebook 页面【英文标题】:Posting to Facebook page without user interaction 【发布时间】:2012-10-15 13:30:26 【问题描述】:

我有一个要求,我需要将更新发布到客户页面。此更新由来自 Web 应用程序的操作触发,对页面的更新将在服务器上完成,无需用户交互和 Web 浏览器,并且如果页面的管理员/用户已注销,则仍应能够发布.

我已经阅读了许多文章和文档页面,所有答案似乎都指向“不,你不能这样做”,但实际上并没有承诺说不。谁能告诉我这是否真的可能?

问候

【问题讨论】:

【参考方案1】:

可能的,但您需要在某些时候进行一些用户交互才能从用户那里获得manage_pages 权限。获得该权限后,您将能够查询 /me/accounts 端点并提取页面访问令牌。

您使用该页面访问令牌发布到页面,一旦您拥有有效的页面访问令牌,您就不需要任何用户交互。确保进行一些错误处理以处理访问令牌无效的情况。

参考 -

Facebook permissions Authenticating as a Page

【讨论】:

该页面已授予对应用程序的 manage_pages 权限的访问权限,如果没有获取用户访问令牌以使用帐户端点,我无法自动获取页面访问令牌。我可以使用应用程序使用图形资源管理器获取页面访问令牌,然后就可以了。但是一旦我注销它就不起作用并且页面访问令牌会更改。【参考方案2】:

我遇到了类似的问题。

文档和找到的示例还不错,并说明了如何通过其 API 与 FB 交互。

唯一非常令人困惑的事情是如何获得强大的 access_token 以及如何在它过期而无需单个用户交互的情况下对其进行更新。

https://developers.facebook.com/docs/facebook-login/access-tokens/ 页面上的所有内容都很好地描述了,除了您需要阅读每个单词并理解每个句子才能找到答案。如果您先阅读目录,然后阅读段落标题,您将不会觉得您在搜索关键词的方法是正确的。

对我来说重要的关键信息位于“扩展页面访问令牌”标题下。问题是我不想扩展令牌,我需要更永久的东西。完成我的谜题的单词在该部分的最后一段。他们是这样说的:

要获得更长的页面访问令牌,请交换用户访问权限 一个长期存在的令牌,如上所述,然后请求页面令牌。 生成的页面访问令牌不会有任何到期时间

看到之后,我使用 FB Graph Tools 生成了永久访问令牌,使用 Graph 调试器对其进行了检查,将其添加到应用程序设置中,就是这样。

获得一次访问令牌后,您无需用户交互即可发布到主页。

快乐的日子...

【讨论】:

以上是关于在没有用户交互的情况下发布到 Facebook 页面的主要内容,如果未能解决你的问题,请参考以下文章

在没有对话框的情况下发布到 facebook ios 6

在没有先喜欢页面的情况下发布到 Facebook 页面提要

是否有任何选项可以在不使用 Facebook Graph API 的情况下发布到用户朋友的墙上

Facebook API:如何在不登录的情况下发布到自己的应用程序墙

如何在不请求 publish_actions 和 manage_pages 权限的情况下发布到我自己的时间线/页面?

在没有身份验证的情况下在 facebook 上发布(与用户交互)