Не могу разобрать JSON в Swift - PullRequest
0 голосов
/ 30 июня 2019

Я пытаюсь протестировать этот фрагмент кода, чтобы убедиться, что я правильно анализирую 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 голосов
/ 30 июня 2019

У вас есть другие ошибки?Я взял твой код и положил его на игровую площадку, и все печатные заявления сработали.Я получил 30,463333333333335 за bmi, и даже добавил оператор печати для risk и получил его успешно.«Test2» печатает первым, прежде чем другие.Есть ли у вас что-нибудь еще, что может привести к невозможности завершения URLSession?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...