无效的范围错误:当我尝试连接Facebook API时,离线访问,发布流程。

36
当我尝试连接Facebook API时,出现了这个错误:
无效的范围:offline_access,publish_stream。此消息仅向开发人员显示。如果存在这些权限,则您的应用程序用户将忽略这些权限。请阅读文档以获取有效的权限:https://developers.facebook.com/docs/Facebook-login/permissions 在我可以毫无问题地将我的网站与Facebook账户连接之前,今天我遇到了上述错误。该应用程序位于我的Facebook账户中。当我使用其他Facebook账户的用户时,我可以毫无问题地连接到我的网站。

2
你能否编辑你的问题,包括代码的相关部分?另外,请将错误消息格式化为引用(通过在新行上以 > 开头),以便清楚地了解是问题还是异常。将其加粗会使阅读变得更加困难。 - Wai Ha Lee
3个回答

72

哇,非常感谢,这个可以用了!但是为什么之前我没有遇到这个问题呢? - Hassane Nassiri
2
由于图形 API v1.0 已于2015年4月30日停用。 - Tobi
1
请告诉我需要在哪里进行更改... 我无法登录 Facebook Android 应用程序。 - NikW

11

只需使用 publish_actions 而不是 publish_stream


请告诉我如何替换它以及在哪里替换?我真的还没有找到任何解决方案... 我无法从我的应用程序登录 Facebook。 - NikW
@NikW 在你的Facebook登录API调用中-这取决于语言。例如,在JavaScript中:FB.login(function(response){ // 处理响应 }, { scope: 'publish_actions', return_scopes: true }); - lukyer
我正在请求用户好友和性别信息,这些权限在Facebook权限列表中列出,但是我一直收到相同的错误。您能否提供建议? - Chandni

0
在下面的表单中,您可以看到具有publish_streamoffline_access参数的值,正如Tobi上面所说的已弃用
<form th:action="@{/signin/facebook}" method="POST">
        <button type="submit">Sign in with Facebook</button>
        <input type="hidden" name="scope" value="email,publish_stream,offline_access" />
</form>

因此,请删除这两个参数并将 更改为,

<input type="hidden" name="scope" value="email,publish_actions" />

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接