如何在 Facebook OAuth2 中根据需要标记范围



有没有办法按照Facebook OAuth2的要求标记诸如publish_stream之类的范围?目前,用户可以跳过该权限,这在我的示例中会导致应用程序无法正常工作。

不,你不能这样做,事实上,Facebook要求在执行任何相关操作之前检查扩展权限。

您可以随时检查用户使用 API 授予的权限 - /me/permissions 。查看 - 图形 API 资源管理器

据我所知,没有办法"要求"扩展权限,例如publish_stream。Facebook有一些关于如何处理用户只授予某些权限的情况的文档:

https://developers.facebook.com/docs/facebook-login/permissions/#handling

报价:

如果有人拒绝登录对话框,请预先进行清晰 说明您请求每个权限的原因。然后让 他们单击或点击以选择重新加入"权限请求"对话框。做 不会立即将它们重定向到权限请求对话框中,除非 一个解释。

对于某人已授予某些权限但未授予其他权限的情况, 仅在缺少权限时提示缺少权限 需要。例如,如果您的应用包含创建 代表一个人的事件,仅提示create_event 每当他们选择将活动添加到 Facebook 时,都可以获得许可。

除非您在登录对话框中请求的权限是 对应用的功能至关重要,而某项功能不起作用 没有它们,让人们继续使用你的应用,而没有 权限。

最新更新