我正在尝试测试这段代码,以确保我正确地解析了JSON,但是我遇到的问题是URLSession代码块内没有任何内容得到执行。当我运行程序时,我得到的只是外面的“ test2”打印语句。如果有人能帮助我指出正确的方向,将不胜感激,谢谢!!
import Foundation
struct BMIInfo: Codable {
let bmi: Double
let more: [String]
let risk: String
}
let url = "http://webstrar99.fulton.asu.edu/page3/Service1.svc/calculateBMI?height=60&weight=156"
let urlObj = URL(string: url)
URLSession.shared.dataTask(with: urlObj!) { (data, response, error) in
let dataAsString = String(data: data!, encoding: .utf8)
let decoder = JSONDecoder()
let jsonresult = try! decoder.decode(BMIInfo.self, from: data!)
let bmi = jsonresult.bmi
let more = jsonresult.more
let risk = jsonresult.risk
print(bmi)
print(dataAsString)
print("test")
}.resume()
print("test2")
答案 0 :(得分:0)
您还有其他错误吗?我拿走了您的代码,并将其放在操场上,所有打印语句都可以正常工作。我为bmi
获得了30.463333333333335,甚至为risk
添加了一条打印语句,并成功完成了该任务。 “ test2”确实先打印。您是否还有其他可能导致URLSession
无法完成的事情?