• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

android - 使用 2016 Facebook SDK 使页面访问 token 永不过期?

[复制链接]
菜鸟教程小白 发表于 2022-12-12 18:13:30 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我们正在构建的应用程序是一个 iOS 和 Android 移动应用程序,它将高中生与非营利组织配对,以帮助管理他们的 Facebook 页面。我们将每个学生分配给一个非营利组织,让他们成为其 Facebook 页面的管理员,并允许他们代表该组织创建帖子以吸引新的受众。然后,每个学生都会获得一个分数,该分数由学生在页面上的帖子获得的点赞、评论、分享等组成。

我们遇到的麻烦在于 Facebook Graph API。我们需要熟悉当前 Facebook SDK 的人来帮助我们制定更好的计划来检索特定数据。

目前,我们已经为我们平台上的每个非营利性 Facebook 页面创建了一个管理员个人资料。我们使用此管理员访问权限来检索每个 Facebook 页面的用户访问 token 和页面访问 token 。但是使用新的 SDK,我们只能使页面访问 token 持续 60 天,这使得我们不得不不断刷新 token 来检索数据。但是,当我们刷新时,Facebook 会要求我们使用用户名和密码进行身份验证,这会减慢我们的后端速度,并有很高的服务器崩溃风险。此外,这种方法增加了我们每天向 Facebook 发出的数据请求数量,当我们向应用添加更多用户时,Facebook 可能会完全关闭我们的访问权限。

所以我们的问题确实出在这个页面访问 token 上,因为我们正在尝试从多个不同的 Facebook 页面查询数据。我们请求的数据也非常具体,因为我们只希望页面上特定“admin_creator”发布的帖子中的数据(即仅限学生,而不是任何其他管理员)为学生分配分数。

有没有办法让当前的 Facebook SDK 的页面访问 token 永不过期?有一些帖子描述了这个过程,但它们是针对 2014 年的,而不是当前版本。另外,有没有比我们目前的方法更好的方法来检索我们需要的特定数据?



Best Answer-推荐答案


步骤:

  1. 获取具有manage_pages权限的user-access-token
  2. 扩展 token 使用(做服务器端,因为它涉及应用程序 secret )

    https://graph.facebook.com/oauth/access_token?grant_type=fb_exchange_token&client_id={your_app_id}&client_secret={your_app_secret}&fb_exchange_token={user_token_from_last_step}

  3. 使用上述步骤中的扩展 token 并使用 API-

    /v2.5/{page-id}?fields=access_token
    

    您将获得页面访问 token 作为响应,该 token 永不过期。

我认为您已经完成了第 2 步,只需按照第 3 步进行操作即可。

我建议你通过 this page关于访问 token 和事情会更清楚。

关于android - 使用 2016 Facebook SDK 使页面访问 token 永不过期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34891245/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap