Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift Rest Api调用故障_Swift_Restapi - Fatal编程技术网

Swift Rest Api调用故障

Swift Rest Api调用故障,swift,restapi,Swift,Restapi,bellow显示了我在填写两个文本框(身高和体重)并按下I按钮后尝试调用API。我没有收到任何错误,但是标签没有用正确的值更新。提前谢谢你 视图控制器 func fetchData() { let h = Double(height.text!) let w = Double(weight.text!) let urlString = "http://webstrar99.fulton.asu.edu/page3/

bellow显示了我在填写两个文本框(身高和体重)并按下I按钮后尝试调用API。我没有收到任何错误,但是标签没有用正确的值更新。提前谢谢你

视图控制器

func fetchData() { let h = Double(height.text!) let w = Double(weight.text!) let urlString = "http://webstrar99.fulton.asu.edu/page3/Service1.svc/calculateBMI?height=\(h!)&weight=\(w!)" guard let url = URL(string: urlString) else {return} URLSession.shared.dataTask(with: url) { (data, response, error) in do { let jsonMessage = try JSONDecoder().decode(Message.self, from: data!) DispatchQueue.main.async { self.resultsBMI.text = String(jsonMessage.bmi) self.resultsMessage.text = jsonMessage.risk } } catch {} }.resume() } }
这不是因为您要在URLSession完成任务之前将文本值设置为标签吗?等等。捕获说明了什么?更改
catch{}
将let error捕获为NSError{print((error)”)}@ElTomato我更改了捕获,但仍然得到相同的结果,即“什么都没有发生”。在let jsonMessage=。。。查看是否有结果。这不是因为您正在URLSession完成任务之前将文本值设置为标签吗?请稍候。捕获说明了什么?更改
catch{}
将let error捕获为NSError{print((error)”)}@ElTomato我更改了捕获,但仍然得到相同的结果,即“什么都没有发生”。在let jsonMessage=。。。看看你有没有结果。
struct Message: Codable {
    let bmi: Double
    let risk: String

    enum MessageKeys: String, CodingKey {
           case bmi, risk
       }