1

解析サーバーを使用して Facebook 経由でログインを実装しました。

これを使用すると、ユーザー情報を正しく取得できます。

FBSDKLoginManager *login = [[FBSDKLoginManager alloc] init];
[login
 logInWithReadPermissions: @[@"public_profile",@"email"]
 fromViewController:self
 handler:^(FBSDKLoginManagerLoginResult *result, NSError *error) {
     if (error) {
         NSLog(@"Process error");
     } else if (result.isCancelled) {
         NSLog(@"Cancelled");
     } else {
         NSLog(@"Logged in %@",result);
         [self fetchUserInfo];
     }
 }];

しかし、私は PFFacebookUtils を使用して、Parse で簡単にユーザーを作成したいと考えています。

[PFFacebookUtils logInInBackgroundWithReadPermissions:@[@"public_profile",@"email"] block:^(PFUser *user, NSError *error) {
    if (!user) {
        //...
    } else if (user.isNew) {
        //...
    } else {
        //...
    }
}];

認証リクエストとともに Facebook モーダルが表示されますが、[OK] を押すと、次のエラーが表示されます。

[エラー]: このユーザーの Facebook 認証は無効です。(コード: 101、バージョン: 1.13.0)。

Facebookのアプリケーション設定内、そこにあるアプリ。

4

1 に答える 1

0

ユーザーが Facebook のパスワードを変更したとき、または Facebook のアプリケーション設定でアプリを削除したときに、Parse アプリで発生します。

User.authData は で更新するはずなのですがPFFacebookUtils.logInInBackgroundWithReadPermissions:、更新されていないようです。これはParse Serverの問題だと思います。

回避策: エラーが発生した場合は、User.authData を で更新できますPFFacebookUtils.linkUserInBackground:withReadPermissions:

于 2016-07-11T00:45:19.130 に答える