Facebook 共享对话框:权限错误 - OAuth“Facebook 平台”“insufficient_scope (#200) 权限错误”

Posted

技术标签:

【中文标题】Facebook 共享对话框:权限错误 - OAuth“Facebook 平台”“insufficient_scope (#200) 权限错误”【英文标题】:Facebook Share Dialog: Permission Error - OAuth "Facebook Platform" "insufficient_scope (#200) Permissions error" 【发布时间】:2015-01-06 18:19:34 【问题描述】:

我的要求在这里:

使用 Open Graph Action 从我的应用分享到 Facebook - 使用分享对话框(因为我不想要特殊的登录对话框)

我请求发布权限,并在获得它后尝试通过发布对话框进行分享。这是我使用的简短代码:

[FBRequestConnection startWithGraphpath:@"/MY_FB_APP_ID/app_link_hosts"
                                 parameters:paramsForAppLinksHost HTTPMethod:@"POST"
                          completionHandler:^(FBRequestConnection *connection, id result, NSError *error)
     
         NSString * appLinkHostURLID = [result objectForKey:@"id"]; // store this ID in an NSString

         if(error)
         
             NSLog(@"error = %@", error.description);
         
         else
         
             [self ShareToFB : appLinkHostURLID];  //Code to share OG story via Share Dialog
         

     ];

但是,上面的错误给了我这个:

com.facebook.sdk:HTTPStatusCode=403, com.facebook.sdk:ParsedJSONResponseKey=
body =     
    error =         
        code = 200;
        message = "(#200) Permissions error";
        type = OAuthException;
    ;
;

Facebook SDK 的问题是文档太多,几乎没有支持,我也没有得到my previous questions 的回答(我试图在未经许可的情况下分享),而这个问题根本不会产生。

有人请告诉 - 拥有 Facebook 批准的 FB 应用程序是否需要它才能完美运行?如果是这样,当应用程序甚至不在 Apple Store 上时,如何正确提供应用程序商店 ID?他们甚至在 applinks 相关权限的代码中使用它(见上文)。

问题的症结在于,开发人员 facebook 登录一切正常,但其他 FB 用户失败。这意味着我所有的 plist 和一切都正常。然而,FB 应用程序没有提交(并且由于许多正当的原因,例如我的 ios 应用程序仍在开发中 - 怎么能指望一个人在应用程序上线之前提交屏幕截图?)

请大家帮忙...

【问题讨论】:

如果权限未获批准,您将只能询问在应用程序中具有角色的用户。所以预计你不能问其他用户 你知道什么......他们需要提交应用程序以供审查,甚至保存“测试用户” - 我在“正在审查的项目”部分看到它,底部有提交按钮。所以 1.0 版几乎没有办法集成 facebook...或者我不知道每个人都在使用的漏洞。 什么?我们不要求您提交以保存测试用户。而且我不知道 1.0 和这个有什么关系 【参考方案1】:

好的,我自己想通了 - 就像许多其他开发人员一样。

1 - 此错误是由于 FB 应用程序未获得某些权限的批准,但仍在尝试使用/请求用户的权限。 publish_action 就是这样一种权限。

2 - 为了对此进行测试,facebook 应用程序开发人员需要从 develolper.facebook.com 门户内批准测试用户。

3 - 此测试用户位于您的 FB 应用门户中:

a) 状态和审查 -> 审查部分下的项目

b) 角色部分。

您(FB 应用程序管理员开发人员)需要在 b) 中添加用户,而不是 a)。

然后用户需要批准您的请求。为了做到,他还需要将自己注册为 FB 开发者。

这么多整洁的文档……很容易迷路。 github 示例和所有示例都很棒,但没有一个能说明全部情况。

唉,他们修改了错误描述。

【讨论】:

以上是关于Facebook 共享对话框:权限错误 - OAuth“Facebook 平台”“insufficient_scope (#200) 权限错误”的主要内容,如果未能解决你的问题,请参考以下文章

通过 android 应用程序共享图像时 Facebook 上传失败错误

facebook graph Api:在页面上发布:权限问题

facebook权限对话框未请求所有权限

iOS 8.3 Facebook 错误未登录

与 facebook 共享对话框共享 playstore 应用程序链接选择不正确的图片

没有链接的 Facebook 共享对话框