Estoy tratando de encontrar una forma adecuada de iterar a través de los datos de una NSURLSession para crear un objeto de usuario.
let task = NSURLSession.sharedSession().dataTaskWithRequest(request) { data, response, error -> Void in
if error != nil {
print("Something went wrong: (error)")
return
}
self.handleLoginAttempt(data!)
print("Finished Login Attempt!")
}
task.resume()
func handleLoginAttempt(data: NSData) {
// Iterate through data.
self.performSegueWithIdentifier("LoggedInSuccessfully", sender: nil)
}
Ahora, va al siguiente controlador de Vista correctamente, sin embargo, simplemente se bloquea. Pongo declaraciones impresas al final (print("Finished Login Attempt!")
) Como podéis ver y en el viewDidLoad()
y veo la declaración de la viewDidLoad deel nuevo ViewController, pero nunca el "intento de inicio de sesión finalizado". Por lo tanto, asumo que estoy haciendo la NSURLSession de forma incorrecta, dado que este es probablemente un conjunto bastante básico de acciones para una aplicación.
Aclamaciones
Respuestas
1 para la respuesta № 1intenta ejecutarlo en MainThread
dispatch_async(dispatch_get_main_queue(), { () -> Void in
self.handleLoginAttempt(data!)
print("Finished Login Attempt!")
})