私は呼んでいます
https://graph.facebook.com/<user_id>/?access_token=<valid_token>
あるいは単に
https://graph.facebook.com/me/?access_token=<valid_token>
必要なプライマリユーザーの電子メールを含まないjsonオブジェクトを取得します。アプリのメール権限を設定しましたが、効果がありません。何が間違っている可能性がありますか?
私は呼んでいます
https://graph.facebook.com/<user_id>/?access_token=<valid_token>
あるいは単に
https://graph.facebook.com/me/?access_token=<valid_token>
必要なプライマリユーザーの電子メールを含まないjsonオブジェクトを取得します。アプリのメール権限を設定しましたが、効果がありません。何が間違っている可能性がありますか?
ログインリクエストでメールの許可を求めることを覚えていますか?これを行うには、ログイン要求(&scope = email)に次のようなスコープパラメータを追加します。
https://www.facebook.com/dialog/oauth?client_id=YOUR_APP_ID&redirect_uri=YOUR_REDIRECT_URI&state=SOME_ARBITRARY_BUT_UNIQUE_STRING&scope=email
email
アクセストークンにアクセス許可がない可能性があります。
AcessTokenDebuggerで確認できます
あなたの質問は、電子メールへのアクセスを許可した後でも、GraphAPIを介して電子メール情報を取得できないということだと思います。新しいバージョンでは、フィールドparamをAPIに渡して、メールなどの追加情報を取得する必要があります。デフォルトでは、応答としてIDと名前のみを提供します。グラフから他の情報を取得する方法については、以下のサンプルを見つけてください。
https://graph.facebook.com/me?fields=id,email,first_name,gender,last_name,link,locale,name,timezone,updated_time,verified&access_token=<value of access_token>&debug=all
お役に立てれば。
メールがFacebookで確認されていない可能性があります。この場合、FacebookはAPIを介してそれを利用可能にしません。コードがこのケースを処理することを確認してください。
APIバージョン2.5のリリース以降、次のようなユーザーの電子メールを受け取ることができます。https://graph.facebook.com/v2.5/me?fields=id,name,email