3

https://oauth.io/signinサードパーティ サイトを使用して、facebook、twitter、github、linkedin を統合しています。Facebook を統合し、ID、名前、性別のプロパティを直接取得できましたが、電子メール アドレス、場所の値を取得するのが困難です。

ここに画像の説明を入力

oauth.io サイトでは、facebook のスコープ権限も追加しました

ここに画像の説明を入力

以下のコードを使用して、ログインしているユーザーの情報を取得しています。

OAuth.popup('facebook')
            .done(function (result) {
                res = result;
                result.me().done(function (response) {
                    debugger;
                    console.log('me ' + response.name);
                    console.log('me ' + response.email);

                });
            })
            .fail(function (error) {
                alert('fail');
            });

結果をフィルタリングして、電子メール、生年月日の値を提供することさえ試みました

OAuth.popup('facebook')
            .done(function (result) {
                res = result;
                result.me(['email', 'birthdate', 'location']).done(function (response) {
                    debugger;
                    console.log('me ' + response.name);
                    console.log('me ' + response.email);

                });
            })
            .fail(function (error) {
                alert('fail');
            });

しかし、空のオブジェクトが返されました。何か不足している場合は誰かに知らせてもらえますか?

4

1 に答える 1

3

Facebookに必要なフィールドを取得することができました

 result.get('/me?fields=name,email,gender,birthday').done(function (response) {
                    console.log('me ' + response.name); 
  });

しかし、同じコードは twitter では機能しません。ほとんどのAPIで一般的な方法で機能する答えをまだ探しています

于 2015-08-05T01:46:05.200 に答える