Graph API v2.4 での FB.api('/me') 応答の不一致
Facebook のJavaScript SDK では、ユーザーは予期されるフィールドと返されるフィールドの間に不一致が発生する可能性があります。 Graph API v2.4 以降では、特定のフィールドがデフォルトで含まれなくなりました。
期待されるフィールド
以前のバージョンの API では、/ への単純なリクエストme は、ユーザーの名前 (name) や ID (id) などの基本情報を返します。ただし、v2.4 では、追加のフィールドを明示的にリクエストする必要があります。
解決策
この問題を解決するには、FB のフィールド パラメータを使用して必要なフィールドを指定します。 .api 呼び出し。たとえば、電子メール、名、姓、誕生日を取得するには、次のコードを使用します:
FB.api('/me', 'get', { access_token: token, fields: 'id,name,email,first_name,last_name,birthday' }, function(response) { console.log(response); });
追加情報
この変更は Graph に導入されました。 API v2.4 により、特にモバイル ネットワークでのパフォーマンスが向上します。明示的なフィールド要求を要求することにより、API はデータ取得を最適化し、不必要なトラフィックを削減できます。特定のフィールドのリクエストの詳細については、以下にリンクされている Facebook ドキュメントを参照してください:
以上がFacebook Graph API v2.4 の「/me」リクエストに予期されたフィールドが欠落しているのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。