したがって、PFUser は電子メールとパスワードを使用して、従来の方法でログインします。彼らがサインアップするとき、私は userName が電子メール アドレスと同じになるように設定しました。ユーザーがサインインすると、電子メールが使用されます。
これは、次のように呼び出す「Facebookに接続」ボタンを追加するまでうまく機能していました。
[PFFacebookUtils linkUserInBackground:[PFUser currentUser] withReadPermissions:@[@"public_profile", @"user_friends"] block:^(BOOL succeeded, NSError *error) {
if (succeeded) {
NSLog(@"Woohoo, user is linked with Facebook!");
[self.tableView reloadData];
}
}];
問題は、これが成功すると、ユーザー名がランダムな文字の長い文字列に変更されることです。つまり、ログアウトすると、メールがユーザー名と一致しなくなるため、再度ログインできなくなります。
Heroku で parse-server を使用しています。Facebook の oauth を実装するまではこのようなことは起こらなかったので、クラウド コードは投稿しません。