簡體   English   中英

無法在 Facebook 的 user_friends API 中獲取用戶的 email ID

[英]Unable to get user's email ID in user_friends API of Facebook

我正在獲取用戶的朋友列表,他們都在使用帶有 Facebook 功能的登錄的應用程序。 “user_freinds”請求的 GraphAPI 中,我請求 id、email 和用戶名。 但是 API 沒有返回用戶的 email。 僅返回用戶的名稱和 ID。 請檢查下面的代碼。

func getFacebookFriends() {
    if AccessToken.current != nil {
        let fbUserID = AccessToken.current?.userId ?? ""
        let friendsPath = "/\(fbUserID)/friends"
        let params = ["fields": "id, name, email"]
        let fbFriendsRequest = GraphRequest(graphPath: friendsPath, parameters: params, httpMethod: .GET)
        fbFriendsRequest.start { (_, result) in
            switch result {
            case .success(let response):
                print(response.dictionaryValue as Any)
                let responseDict = response.dictionaryValue!
                let data = responseDict["data"] as! [[String:Any]]
                if data.count != 0 {
                    // Sync the list with API
                } else {
                    // Show error 
                }
            case .failed(let error):
                // Show error
            }
        }
    }
}

我在這里有什么遺漏嗎?

另請注意,我正在使用 Facebook 的開發人員門戶創建的 Facebook 的測試用戶。 好友只能通過開發者門戶添加和授權。

查看文檔,您缺少需要添加的user_friends權限。

  1. 使用Graph API Explorer進行調試: https://developers.facebook.com/tools/explorer/
  2. 嘗試獲取權限:'GET/{user-id}/permissions'
  3. 嘗試在此工具中獲取好友列表和單獨的用戶信息
  4. 如果用戶在隱私設置頁面上隱藏 Email 將不可見

暫無
暫無

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

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