Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Parse platform Parse.com-另一个用户已链接到此facebook id_Parse Platform - Fatal编程技术网

Parse platform Parse.com-另一个用户已链接到此facebook id

Parse platform Parse.com-另一个用户已链接到此facebook id,parse-platform,Parse Platform,我正在使用parse.com的api,试图将当前活跃的用户链接到他的facebook帐户 我不断地陷入: Another user is already linked to this facebook id 至于我的问题:我如何获得用户连接的facebook id?我想将当前匿名用户切换为活动和登录用户 谢谢我通过注销当前用户然后登录解决了这个问题。效果很好 [PFFacebookUtils linkUser:[PFUser currentUser] permissions:permissio

我正在使用parse.com的api,试图将当前活跃的用户链接到他的facebook帐户

我不断地陷入:

Another user is already linked to this facebook id
至于我的问题:我如何获得用户连接的facebook id?我想将当前匿名用户切换为活动和登录用户


谢谢

我通过注销当前用户然后登录解决了这个问题。效果很好

[PFFacebookUtils linkUser:[PFUser currentUser] permissions:permissionsArray block:^(BOOL success, NSError *error) {
    if (!success) {
        if (!error) {
            NSLog(@"User Cancelled");
        } else {
            if(error.code == 208) {
                [PFUser logOut];
                [PFFacebookUtils logInWithPermissions:permissionsArray block:^(PFUser *user, NSError *error) {
                    if(error) {
                        NSLog(@"An error occurred: %@", error);
                    } else {
                        // Carry on
                    }
                }];
            } else {
                NSLog(@"An error occurred: %@", error);
            }
        }
    } else {
        // Carry on
    }
}];

我面临同样的问题,解决方案甚至更好,只是忽略这个错误。这是一种警告。它会被抛出,但用户会链接到另一个帐户。

您可以忽略它,因为它是一个警告,通知您Facebook帐户已链接(在您的情况下,它是链接到匿名用户的),而不是一个错误

最后分配的用户将链接到Facebook帐户。因此,您的初衷——“将当前活跃用户链接到其facebook帐户”是有效的,即使会发出警告通知您匿名用户已链接到同一facebook帐户


要避免此警告,请在将Facebook用户与当前活动用户链接之前,始终注销匿名用户

当您尝试这样链接时,请检查您是否在请求权限:

[PFFacebookUtils linkUser:[PFUser currentUser] permissions:[NSArray arrayWithObjects:@"publish_stream",@"publish_actions", @"user_about_me", @"user_photos", @"read_stream",@"friends_photos",@"email",@"user_birthday",@"user_location", nil] block:^(BOOL succeeded, NSError *error) {
            if (succeeded) {
                [self login:nil];
                NSLog(@"Woohoo, user logged in with Facebook!");
            }else{
                 NSLog(@"%@", [[error userInfo] objectForKey:@"error"]);

                    NSLog(@"An error occurred: %@", error);

            }
        }];

在我的例子中,我传递了nil参数以获得权限。可能对其他人有帮助

事实上,如果您总是在登录FB之前注销匿名用户,您将失去该连接,如果您存储用户数据/首选项/活动(用户在FB连接之前所做的),因为这将为同一个人创建第二个用户条目,因此,我认为最好还是忽略它,或者在Jeremy的回答中,这不是真的……只是测试了它,这不是很好的解决方法,但是错误消息仍然出现,但是用户在后端正确链接到facebook用户。我希望通过解析自己来解决这个问题。我还添加了
[[PFUser currentUser]delete]
来从数据库中删除匿名用户,因为这个用户将不再需要,并且将是一个死引用。不幸的是,这看起来是最好的答案。您将丢失当前用户的所有数据,但Facebook链接将正确完成。另一个问题是,用户得到2个授权Facebook的提示。