Facebook Connect APIを使用して、自分のサイトにサインアップするときにユーザーのメールアドレスを取得します。これは完全に99%以上の時間で動作しますが、電子メールの許可を含む自分のサイトのアクセス許可を与えた後、グラフAPIにユーザーのデータを照会すると、Facebookはその人の電子メールアドレスとして大きな数値(たとえば14036774009)を返します。Facebook Graph APIがメールアドレスの代わりに数字を返す
これまでのところ、数値は常に異なり、常に11桁で、Graph APIの他のすべてのユーザーデータが有効です。私はこの問題を自分が管理しているFacebookアカウントで再現することはできませんでした。
いくつかの点で、大きな数字は、サードパーティのアプリケーションにメインアドレスではなく転送先アドレスを与えることを選択した人のためにFacebookが生成するランダムプロキシメールアドレスを思い出させます(プロキシアドレスはapps + [email protected]mail.facebook.com)
誰もこの動作や解決方法について説明できますが、いつも有効な電子メールアドレスを取得できますか?
ここでは、FB JS SDKを初期化して呼び出す方法について説明します。数ヶ月前にこれを更新して、新しいOAuthログインベースのシステムをサポートしていれば、それはあなたが意味するものです。 FB.init({appId: '...'、ステータス:false、cookie:true、oauth:true、xfbml:false、channelUrl: "..."}); FB.login(function(response){...}、{scope: 'email'}); – scyclops