小编Kon*_*tin的帖子

URLSession.shared.dataTask 接收数据的正确方式

再会!

在检查从 dataTask 接收到的(数据、响应、错误)并进行一些特殊的错误处理时,我试图找到正确的顺序,我有点困惑。

通常我们的 URLSession 看起来像这样:

class HTTPRequest {
    static func request(urlStr: String, parameters: [String: String], completion: @escaping (_ data: Data?,_ response: URLResponse?, _ error: Error?) -> ()) {
        var url = OpenExchange.base_URL + urlStr
        url += getParameters(param: parameters)
        let request = URLRequest(url: URL(string: url)!)
        let task = URLSession.shared.dataTask(with: request) { (data, response, error) in
            if error != nil {
                print("URLSession Error: \(String(describing: error?.localizedDescription))")
                completion(nil,nil,error)
            } else {
                completion(data,response,nil)
            }
        }
        task.resume()
    }

    static func getParameters(param: [String: String]) -> …
Run Code Online (Sandbox Code Playgroud)

api error-handling ios swift nsurlsessiondatatask

4
推荐指数
1
解决办法
6532
查看次数

标签 统计

api ×1

error-handling ×1

ios ×1

nsurlsessiondatatask ×1

swift ×1