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

时间:2015-01-06 18:19:35

标签: ios objective-c facebook facebook-opengraph facebook-ios-sdk

我的要求在这里:

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

我请求发布权限,获取后我尝试通过Post对话框进行分享。这是我使用的简要代码:

[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的答案(我试图在未经许可的情况下分享),而这个问题根本就没有#39; t yield。

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

问题的症结在于,所有内容都与开发者facebook登录完美配合,但与其他FB用户失败。这意味着我所有的plist和一切都很好。然而,FB应用程序尚未提交(并且出于许多正当理由,例如我的iOS应用程序仍在开发中 - 如何在应用程序生效之前提交屏幕截图以及所有内容?)

有人请帮忙......

1 个答案:

答案 0 :(得分:2)

好吧,我和其他开发人员一样自己想出来了。

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

2 - 为了测试这一点,Facebook app开发人员需要从develolper.facebook.com门户网站批准测试用户。

3 - 此测试用户位于您的FB应用程序门户网站下:

a)状态&评论 - >审核部分中的项目

b)角色部分。

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

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

对于整洁的文档来说太多了......人们很容易迷失方向。 github样本和所有都很好,但没有一个能说明全貌。

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