关于Facebook商务应用获取用户公开主页帖子的技术咨询
Facebook Business App 获取用户个人帖子相关问题解答
核心问题回应
Business App 无法通过 Facebook Login for Business 获取用户个人帖子,因为该类型应用没有对应的权限(如旧版 Consumer App 的 user_posts),使用用户令牌请求返回空数组是正常现象。
疑问解答
a) 旧版 Consumer App 的 user_posts 权限可用至何时?
user_posts 属于 Facebook Graph API v2.12 及更早版本的已停用权限,Facebook 不再允许新应用申请该权限。对于已存在的旧应用,Facebook 没有公开固定的停用截止日期,但一旦应用进行版本升级、重新提交审核,或者触发权限重新验证,该权限大概率会被移除。Facebook 会逐步淘汰这类涉及个人隐私数据的旧权限,建议尽快规划迁移方案。
b) Business App + Facebook Login for Business 获取用户帖子的替代方案?
目前没有直接获取用户个人帖子的官方权限,受隐私政策限制,Facebook 已收紧个人数据访问权限,可尝试以下合规思路:
- 引导用户使用 Page 发布内容:让用户将需要分享的内容发布到其管理的 Facebook Page,通过 Business App 申请
pages_show_list、pages_read_engagement等权限,即可获取该 Page 的帖子内容 - 用户主动分享内容:通过 Facebook Sharing Dialog 引导用户主动将个人帖子分享至你的应用,这种方式无需额外权限,用户授权后应用可获取到对应的分享内容
- 特殊场景申请 Advanced Access:若你的应用属于新闻、媒体等合规场景,可尝试申请 Advanced Access,但针对个人帖子的权限获批概率极低,需严格符合 Facebook 的数据使用规范
请求与响应示例
请求命令
curl \ --request GET \ --url 'https://graph.facebook.com/me/posts?access_token=xxx&fields=id'
响应对比
- 商务登录认证令牌响应:
[] - 旧版消费者登录响应:
[{ "id": "12345_67890"}, ...]
内容的提问来源于stack exchange,提问作者Matt Rowles
相关产品推荐
相关产品推荐

