Facebook接続を使用してユーザーの電子メールIDを取得するにはどうすればよいですか? 以下のコードでユーザーの電子メールIDを取得しようとしています:
FB.api('/me', function(response)
しかし、ユーザーの電子メール ID に応答していません。私のアプリケーションでは、検証を確認するために電子メールが必要です。
助けてください。
Facebook では、すべてのユーザーのメール アドレスを取得することはできません。それはプライバシーに関連する問題です。対応するユーザーが、メールを表示するためのアクセスをブロックしている可能性があります。
あなたのコードは、ユーザーが他のユーザーが自分の電子メールを表示できるようにしている場合にのみ機能します。
そのようなIDを試してみてください。取得できます。
SOでこのスレッドを見つけました。役に立つかどうかを確認してください。
名前にアクセスするのと同じ方法です。すなわち
response.email と response.id
ただし、電子メール アドレスを取得するには、アクセス許可が必要です。
FB ログイン ボタンに scope="email" を追加します。
function login() {
FB.login(function(response) {
if (response.authResponse) {
// connected
testAPI();
} else {
// cancelled
}
}, { scope: 'email' });
}
function testAPI() {
console.log('Welcome! Fetching your information.... ');
FB.api('/me', function(response) {
console.log('Good to see you, ' + response.name + '.' + ' Email: ' + response.email + ' Facebook ID: ' + response.id);
});
}
初心者向けの優れたチュートリアルは次のとおりです。http://www.loginworks.com/technical-blogs/404-working-with-facebook-javascript-sdk
私は上記のプロモーションへのリンクとは関係ありません。情報提供のみを目的としています
また、プライバシーに関連する問題です。上記のコードは、ユーザーが有効にした他のユーザーが自分のメールを表示できるようにのみ機能します。