簡體   English   中英

如何從Facebook Graph Api獲取用戶電子郵件?

[英]How to get a user email from Facebook Graph Api?

我很困惑

我正在嘗試使用Facebook Api獲取用戶數據,我正在使用scope=email請求電子郵件許可,如下所示:

https://www.facebook.com/dialog/oauth?client_id=MY_APP_ID&redirect_uri=MY_URI&scope=email

在Facebook訪問確認窗口中,我看到我的應用程序請求訪問電子郵件,但是即使在此之后,當我向Graph Api請求時,它也不會返回電子郵件(它會返回所有其他字段)。

https://graph.facebook.com/me?fields=id,name,email&access_token=MY_TOKEN

它僅返回ID和名稱。

謝謝大家的寶貴時間。 在我從Facebook的“我的帳戶”中刪除了應用程序訪問權限之后,嘗試重新獲得訪問權限后,它開始自行運行。

在批准從URL提出的請求時,請檢查您是否具有電子郵件許可或用戶已取消選中它:facebook.com/dialog/oauth?client_id = MY_APP_ID&redirect_uri = MY_URI&scope = email。 您可以使用https://graph.facebook.com/me?fields=permissions&access_token=[TOKEN]進行檢查。 它應該給您響應,通知是否授予電子郵件許可,如下所示:

{
    "permissions":{
        "data": [
        {
            "permission": "user_friends",
            "status": "granted"
         },
         {
            "permission": "email",
            "status": "granted"
         },
         {
            "permission": "public_profile",
            "status": "granted"
         }
      ]
   },
   "id": "10207905751235096"
}

檢查Facebook工具資源管理器以了解更多信息: https : //developers.facebook.com/tools/explorer/

我不確定這是否適用於某個應用程序,如果是這樣,在發布我的應用程序之前,我遇到了同樣的問題。 查看文檔以查看它是否適用於您:

https://developers.facebook.com/apps/ {您的應用ID} / review-status /

批准后,電子郵件和其他敏感信息將顯示...

嘗試使用C#SDK即可輕松完成。 此鏈接中有一些示例。

希望能幫助到你。

為此使用FQL API:

查詢:

select contact_email from user where uid=me()

呼叫:

https://api.facebook.com/method/fql.query?format=json&query=select+contact_email+from+user+where+uid%3Dme%28%29&access_token=[access_token]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM