In meinem Projekt laufen 4 Web-Dienste im Hintergrund. Ich möchte alle diese Dienste beim Abmelden vom aktuellen Status aus anhalten, ohne auf eine Antwort zu warten. Ich habe diesen Code gefunden, dassAlle Web-Service-Anrufe von Alamofire abbrechen
Alamofire.Manager.sharedInstance.session.invalidateAndCancel()
dafür aber nach diesem Aufruf, ich bin nicht in der Lage Service-Anrufe wieder zu machen. Gibt es eine Möglichkeit, alle laufenden Anfragen abzubrechen?
Hier ist mein Service Telefonvorwahl
func getAllCount(parameters: [String: AnyObject],completion: (success : Bool) -> Void) {
PKHUD.sharedHUD.contentView = PKHUDTextView(text: "Loading...")
PKHUD.sharedHUD.show()
request = Alamofire.request(.POST, GlobalConstants.KGetAllCount, parameters: parameters, encoding:.JSON).responseJSON
{
response in switch response.result {
case .Success(let JSON):
PKHUD.sharedHUD.hide()
print("Success with JSON: \(JSON)")
let status : NSString = JSON.valueForKey("status") as! String
if(status .isEqualToString("1")){
MyViewState.QJoined = JSON.valueForKeyPath("data.TotalJoinQueue") as! String
MyViewState.Qstarted = JSON.valueForKeyPath("data.TotalCreatedQueue") as! String
MyViewState.Bumps = JSON.valueForKeyPath("data.TotalBump") as! String
completion(success: true)
break
}else{
completion(success: false)
Helper.globalAlert(JSON.valueForKey("data") as! String)
break
}
case .Failure(let error):
PKHUD.sharedHUD.hide()
print("Request failed with error: \(error)")
completion(success: false)
break
}
}
}
können Sie nur ausstehende Anfrage abbrechen. wenn die Anfrage ausgeführt wird, ist es zu spät ... Sie betreiben überhaupt keine Web-Dienste. – user3441734
Bitte überprüfen Sie diese Antwort http://stackoverflow.com/a/27022598/1030951 – HarshIT