我是 swift 的新手,因为我是一名后端开发人员,所以我想我会尝试制作一个应用程序, 了解我从我制作的 api 返回的数据是如何处理的。我有时也做前端,但它在网站上:D
在 c# 中,我知道 async/await 可以让代码在继续之前等待获得结果。我尝试过使用完成处理程序和 group.enter()、group.leave(),但都没有用,或者我没有做对。我知道 asynce/await 还不是一个东西,很快,或者我读过。
这是我的代码,我现在有:
struct vuItem:Decodable {
var date:String
var temperatureC:Int
var temperatureF:Int
var summary:String
}
var vuItems:[vuItem] = [vuItem]()
func getVejr() -> [vuItem] {
let url = URL(string: "http://192.168.137.1:90/weatherforecast")
var result = [vuItem]()
let session = URLSession.shared
let task = session.dataTask(with: url!, completionHandler: { data, response, error in
// Check the response
print(error)
print(response)
do {
result = try! JSONDecoder().decode([vuItem].self, from: data!)
print(result[0].date)
}
})
task.resume()
return result
}
vuItems = getVejr()
vuItems.forEach { (item) in
print(item.date)
}