簡體   English   中英

SoundCloud API:使用iOS / Alamofire的GET請求失敗,代碼為-1005

[英]SoundCloud API: GET request fails with code -1005, using iOS/Alamofire

我正在使用一個iOS應用程序,其中SoundCloud用戶在Web視圖中使用OAuth登錄,然后該應用程序通過Alamofire向SoundCloud API發出HTTP請求。 我已經成功驗證了用戶身份並存儲了他們的令牌(使用ABMSoundCloudAPI ),但是對https://api.soundcloud.com/me的 GET請求失敗,並出現-1005錯誤,“網絡連接丟失。” 這似乎是與iOS的共同問題為討論在這里 ,但是重置模擬器不解決這個問題,我和使用設備時也會出現問題。 我也嘗試過:

  • 刪除並重新添加wifi網絡
  • 如果失敗,則以編程方式重試請求
  • 用“連接”添加標題:“關閉”

在每種情況下,我都會看到相同的錯誤。 還有其他標題應嘗試嗎? 我正在通過Cocoapods使用這些庫:

  • ABMSoundCloudAPI(0.2.1)
  • AFNetworking(2.6.1)
  • AFOAuth2Manager(2.2.0)
  • Alamofire(3.1.2)
  • SwiftyJSON(2.3.1)

這是我的代碼:

var retryCount = 0

func getUserInfo(token:String) {
    let headers = ["Connection": "Close"]
    Alamofire.request(.GET, "https://api.soundcloud.com/me?oauth_token=\(token)", parameters: ["client_id":clientId], encoding: .JSON, headers: headers)
        .responseJSON { response in

            guard response.result.error == nil else {
                print("error calling GET on /me")
                print(response.result.error)
                if self.retryCount < 2 {
                    if let token = self.defaults.stringForKey("sc_key_token") {
                        self.getUserInfo(token)
                        ++self.retryCount
                    }
                }
                return
            }

            guard let value = response.result.value else {
                print("Error: did not receive data")
                return
            }


            let user = JSON(value)

            print("User info: " + user.description)

    }
}

錯誤信息:

Error Domain=NSURLErrorDomain Code=-1005 "The network connection was lost." UserInfo={NSUnderlyingError=0x126248c10 {Error Domain=kCFErrorDomainCFNetwork Code=-1005 "(null)" UserInfo={_kCFStreamErrorCodeKey=-4, _kCFStreamErrorDomainKey=4}}, NSErrorFailingURLStringKey=https://api.soundcloud.com/me?oauth_token=USER_TOKEN, NSErrorFailingURLKey=https://api.soundcloud.com/me?oauth_token=USER_TOKEN, _kCFStreamErrorDomainKey=4, _kCFStreamErrorCodeKey=-4, NSLocalizedDescription=The network connection was lost.}

看來這是由請求編碼引起的。 當我從.JSON切換到.URL時,1005錯誤消失了。

暫無
暫無

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

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