我想使用阿拉莫菲尔,但它真的很奇怪。 我打电话给这个函数和调试,它被调用了两次,我不知道为什么。阿拉莫菲尔叫了两次
它第一次只是跳跃所有的功能,没有做任何事情,第二次运行正常。
override func viewDidLoad() {
super.viewDidLoad()
download{
//do stuffs
}
}
func download(completed: @escaping DownloadComplete){
Alamofire.request("https://httpbin.org/get").responseJSON { response in
print(response.request ?? "") // original URL request
print(response.response ?? "") // HTTP URL response
print(response.data ?? "") // server data
print(response.result) // result of response serialization
if let JSON = response.result.value {
print("JSON: \(JSON)")
}
completed()
}
}
这个ViewController它被PerformSegue WithIdentifier调用。我不知道会是什么。
调用这个好像里面进行赛格瑞:如果让JSON = {response.result.value // 电话这里执行segue print(“JSON:\(JSON)”) }因为它是异步调用 –
什么函数被调用两次?由于请求是异步的,因此预计它会运行'.request'一次,然后在一秒后实际运行块的内容。如果可能的话,将'print'放在代码的不同位置并显示结果。 – Oskar
“Alamofire.request” 它看起来像跑两次。 –