JSON 解析 - 没有 URL 会话任务恢复的替代方法是什么,因为它不是主线程的一部分?
JSON Parsing - What are the alternate ways without URL Session task resume as it is not part of the main thread?
我是 Swift
的新手。对于 JSON
从 API 解析,我找到了以下代码。
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。
我是 Swift
的新手。对于 JSON
从 API 解析,我找到了以下代码。
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。