2017-02-14 5 views
-1

Ich verwende Alamofire Version 3.1.5 mit meiner xCode Version 7.3. Ich habe es auf vielen meiner Apps ausprobiert. Aber ich bekomme kein Ergebnis. Vor der Ausführung wird kein Fehler angezeigt. Mein Code ist wie folgt:Ich kann kein Ergebnis erhalten, während ich Alamofire verwende.

var apiUrl : String 
var alamoFireManager:Manager! 
var configuration = NSURLSessionConfiguration.defaultSessionConfiguration() 
init(apiUrl : String){ 
     self.apiUrl = apiUrl 
     configuration.timeoutIntervalForRequest = 30.0 
     alamoFireManager = Alamofire.Manager(configuration: configuration) 
    } 
print(apiUrl) 
alamoFireManager.request(.GET, apiUrl, encoding: .JSON).validate(contentType: ["application/json"]) .responseJSON { response in 
      print(response.result.value) 
      switch response.result{ 
      case .Success: 
       if let value = response.result.value{ 
        let json = JSON(value) 
        print (json) 
        callback.onResponse(value) // this is where my value is sent 
       } 
      case .Failure(let error): 
       print(error.localizedDescription) 
      } 
     } 

Ich habe Breakpoint verwenden und die App direkt erreicht diese letzte Klammern die alamofire Linie frm.

+0

Hat der 'print (response.result.value)' schließlich erreicht werden? – luk2302

+0

Nein, tut es nicht. aus der Zeile mit AlamofireManager geht es direkt an die Ende-Klammern –

Antwort

0

Ich denke, das Problem ist, dass Sie nicht anrufen resume(). Vom Alamofire doc

Wenn der besitzende Manager nicht startRequestsImmediately zu true gesetzt hat, muss der Antrag resume() aufrufen, um zu starten.

versuchen, diese

alamoFireManager.request(.GET, apiUrl, encoding: .json).validate(contentType: ["application/json"]).resume().responseJSON { response in 
     print(response.result.value) 
     switch response.result{ 
     case .Success: 
      if let value = response.result.value{ 
       let json = JSON(value) 
       print (json) 
       callback.onResponse(value) // this is where my value is sent 
      } 
     case .Failure(let error): 
      print(error.localizedDescription) 
     } 
    } 
+0

Ich bekomme diesen Fehler erneut, wenn ich den Lebenslauf "Wert von Tupel Typ '()' hat kein Mitglied responseJSON". Gut danke –

Verwandte Themen