Avatar
もう1点、画面を離れる場合に通信中であればキャンセルしたいです。 private var task: SessionTask? //viewDidLoad sessionTask = Session.send(request) { result in ... } if let sessionTask = sessionTask as? URLSessionTask { print(sessionTask.state) //running } //viewWillDisappear if let sessionTask = sessionTask as? URLSessionTask { print(sessionTask.state) //completed sessionTask.cancel() //not working } としているのですが、通信中なのにタスクが完了状態となってキャンセルできないようです。 これは正しい動作なのでしょうか? APIのレスポンスを受け取るまでは、running状態だと思っていました。 (edited)