Facebook アプリケーションがあり、JavaScript JDK を使用しています。
メールの許可をよくリクエストしています:
新しいユーザーの場合、認証ウィンドウにリダイレクトします。
top.location = 'https://graph.facebook.com/oauth/authorize?client_id=' + APP_ID + '&scope=email&redirect_uri=XXX';
そして、それを取得しようとしています:
FB.getLoginStatus(function (response) {
if (response.authResponse) {
FB.api('/me', function (response) {
console.log(response.email);
}
}
}
既存のユーザーの場合(メールが未定義の場合)、メールの許可を再リクエストして再取得しようとしました:
FB.login(function(response){
if(response.status == 'connected'){
FB.api('/me?fields=email,id', function(response) {
console.log(response.email);
});
}
},{scope: 'email'});
問題は、一部のユーザーでは /me の応答で電子メールを受信し、他のユーザーでは未定義であることです。何が間違っている可能性がありますか?
ありがとう!