ios - JSON 解析 - 没有 URL session 任务恢复的替代方法是什么,因为它不是主线程的一部分?

标签 ios json swift parsing nsurlsession

我是 Swift 的新手。对于从 API 解析的 JSON,我找到了以下代码。

guard let url = URL(string: "url path here") else {return}

let task = URLSession.shared.dataTask(with: url)
{
    (data, response, error) in
    guard let dataResponse = data,
        error == nil else
    {
        print(error?.localizedDescription ?? "Response Error")
        return
    }
    do
    {
        //json response will be received here
        let jsonResponse = try JSONSerialization.jsonObject(with: dataResponse, options: []) as! [String : Any]
        print(jsonResponse)


    }
    catch let parsingError
    {
        print("Error", parsingError)
    }
}
task.resume()

为什么我们需要使用task.resume()。如果没有上述代码,是否还有其他方法可以获取 JSON 响应。

最佳答案

为什么我们需要使用 task.resume()? -

Newly-initialized tasks begin in a suspended state, so you need to call this method to start the task.

来源 - https://developer.apple.com/documentation/foundation/urlsessiontask/1411121-resume

如果没有上述代码,还有其他方法可以获取 jsonResponse 吗? -

这是从 api 获取响应的基本代码,即使您使用任何第三方,它们在内部使用相同的 URLSession。

关于ios - JSON 解析 - 没有 URL session 任务恢复的替代方法是什么,因为它不是主线程的一部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53318647/

相关文章:

java - jackson 反序列化间歇性地有一个数组的JSON

php - 将 JSON 数据发送到 PHP 服务器(本地主机到托管站点)

ios - 如何快速将图片放在图片之上

swift - 如何更新 NSPrintPanel 的预览?

swift - 如果在 Swift 中可选向下转型失败,你能继续循环吗?

iphone - 在警报中显示当前 View Controller 的名称

iOS裁剪相机拍摄的图像

iphone - cocos2d/box2d iPhone-随机圆形路径

ios - UIView animateWithDuration 完成 block 被循环中断打断;

php - 在 POSTMAN 上使用 PUT 方法上传文件