【问题标题】:Extended access tokens for pages without user administrator没有用户管理员的页面的扩展访问令牌
【发布时间】:2013-04-22 18:33:45
【问题描述】:

我想知道是否可以为没有设置 facebook 个人资料设置为管理员的 facebook 页面获取扩展访问令牌。我看到可以创建一个 facebook 页面,而无需将用户个人资料设置为管理员,并使用我的应用程序对这些页面进行身份验证。

对于作为管理员拥有 facebook 个人资料的页面,我可以在请求 manage_pages 权限时扩展短期访问令牌。但如果没有与之关联的用户,我不会。

文档描述了扩展页面令牌的过程。

应用可以从主页管理员用户那里检索主页访问令牌,当他们 使用 manage_pages 权限进行身份验证。如果用户访问 用于检索此页面访问令牌的令牌是短暂的,页面 访问令牌也将是短暂的。

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

Extending Access Tokens Documentation

我想知道当没有与页面关联的管理员时,是否可以获得页面的扩展访问令牌。

【问题讨论】:

  • 您是什么意思“没有作为管理员的个人资料的页面”?这是不可能的 - 所有页面都必须由用户帐户拥有,无论是普通用户帐户还是企业帐户 - 就 API 而言,两者的工作方式相同
  • 我也是这么想的。但显然不是,可以在没有用户帐户拥有的页面的情况下创建一个 facebook 页面。如果您在未登录的情况下访问 Facebook,您会看到此页面,您可以在其中创建页面而无需将其与用户关联:screenshot
  • 这将创建一个企业帐户,该帐户将成为页面的唯一管理员 - 企业帐户可以使用 API,授予管理其页面的访问权限,并以与任何常规用户帐户相同的方式使用页面管理 API
  • 完全正确。但我似乎无法获得“企业帐户”的扩展访问令牌。你知道这是否可能吗?

标签: facebook facebook-graph-api oauth facebook-page


【解决方案1】:

所有页面都必须由用户帐户拥有,无论是普通用户帐户还是企业帐户 - 就 API 而言,两者的工作方式相同,至少对于登录(企业帐户没有名称) 、时间线、朋友等显然不完全相同,但他们以相同的方式登录并授予对应用程序的访问权限)

我刚刚在几分钟前使用我的应用程序、企业帐户和server side oauth flow 进行了测试,并在将企业帐户的代码交换为访问令牌时正确收到了一个长期到期(大约 60 天)的令牌

然后我可以再次完成流程,这一次请求manage_pages 权限,并且能够使用令牌检索帐户使用常规流程管理的页面的未过期页面访问令牌(调用到/me/accounts 或`/?fields=access_token)

【讨论】:

  • 所有页面都应该归用户或企业帐户所有,这是有道理的。但是,我仍然无法为我的应用获取未过期的访问令牌。通过服务器端oauth流程。首先,我收到一个商业用户的短期到期(1 小时)令牌。也许这是第一个出错的地方?然后通过第二次请求manage_pages,获取页面access_token,停留在1小时。
  • 好吧,我想我正在取得进展。我能够使用我的测试应用程序获得扩展访问令牌。不幸的是,我无法使用我的 Production 应用程序。你知道发生这种情况是否有原因?我们是否违反了一些限制我们使用短访问令牌的条款?
  • 否,但如果您的用户(企业帐户)在很久以前已经授权了您的生产应用程序,他们可能需要删除并重新添加它以获得长令牌
  • 嗯,您知道获取扩展访问令牌是否会受到您应用的垃圾邮件报告的限制?我一直无法深入了解为什么我们的应用程序在获取这些扩展访问令牌方面受到限制。是否可以就此直接与平台团队中的某个人取得联系?
  • 我仍然不清楚您所说的不起作用 - 如果您有可重现的错误,请在 Facebook 的错误跟踪器中提交错误报告,如果您尚未取消对该应用的授权,然后再次通过服务器端身份验证流程,在编译错误报告的重现步骤之前先尝试
猜你喜欢
  • 2012-04-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-02-16
  • 2015-04-05
  • 2012-02-17
  • 1970-01-01
  • 2012-04-12
相关资源
最近更新 更多