【问题标题】:Fetch posts from Facebook page using FB API使用 FB API 从 Facebook 页面获取帖子
【发布时间】:2019-11-10 10:03:40
【问题描述】:

直到今年夏天,我有一个网站(不是我的网站)正在获取它的响应 fb 页面帖子并将其显示在页面上。

我是使用 app-token 进行的,现在它不起作用,因为它现在需要 Page Public Content Access 来获取这些数据,而这又需要将其注册为应用程序,这超出了本文的范围.

我尝试创建一个不会过期的用户访问令牌,但无论我尝试使用什么“技巧”,它们似乎都会在 3 个月后过期。

有什么建议可以让我克服它吗?

也许是一个无需用户交互即可刷新令牌的自动 api 调用?

【问题讨论】:

    标签: javascript facebook facebook-graph-api facebook-access-token


    【解决方案1】:

    如果您管理页面,您可以使用页面令牌(不是用户令牌) - 但它会过期。没有办法解决这个问题。或者您申请页面公共内容访问,以便您可以使用应用令牌。

    自动刷新会使令牌过期变得毫无意义,为此您需要用户交互。

    【讨论】:

    • 我无法申请公共内容访问,因为它需要 facebook 的完整商业注册。是否有 API 调用来生成令牌?
    • 不行,没有别的办法。如果您可以在没有用户交互的情况下生成令牌......那么,这将使令牌的全部意义无效。
    • 我不明白为什么一个页面首先需要用户访问令牌或特殊权限才能访问它自己的内容。应该有不同的方式,不是吗?
    • 该页面不需要,您需要特定权限才能访问该页面的数据。这很简单,你要么拥有该页面,你可以使用该页面的页面令牌,或者你不拥有它,你需要申请 PPCA - 因为如果没有,你不应该只抓取你不拥有的页面的东西有充分的理由。没有不同的方法。
    • 但是我想从我的页面(我有管理员权限的页面)中获取数据,但是页面访问令牌需要特殊权限
    【解决方案2】:

    所以,我做到了!

    现在是如何做到的:我使用manage_pages 访问权限,而不是Page Public Content。 我一共来回走了 5 次才让这件事过去了一周多一点。

    首先Page Public Content只有在你想分析其他页面的数据时才被Facebook允许,所以你最好不要乱用它。

    为了让请求获得批准,我必须做的是在您的申请中指定没有登录的请求访问权限,在描述中提供您的代码副本,并且我还包括一个与用户合作的网址通过 javascript 生成令牌,因此他们可以通过 Web 调试器查看代码。

    之后,您将获得一个 manage_pages 令牌,您可以使用它来获取您的页面帖子

    我真的希望其中一些事情有点矫枉过正,但是,就像我说的那样,我总共必须提交 5 次评论,所以在最后一次尝试中我全力以赴......

    【讨论】:

      猜你喜欢
      • 2022-09-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-10
      • 2014-10-03
      • 1970-01-01
      相关资源
      最近更新 更多