无法在Swift中解析JSON

时间:2019-06-29 21:50:55

标签: json swift

我正在尝试测试这段代码,以确保我正确地解析了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")

1 个答案:

答案 0 :(得分:0)

您还有其他错误吗?我拿走了您的代码,并将其放在操场上,所有打印语句都可以正常工作。我为bmi获得了30.463333333333335,甚至为risk添加了一条打印语句,并成功完成了该任务。 “ test2”确实先打印。您是否还有其他可能导致URLSession无法完成的事情?