/ / performSegueWithIdentifier de NSURLSession - ios, swift2, nsurlsession

performSegueWithIdentifier da NSURLSession - ios, swift2, nsurlsession

Estou tentando encontrar uma maneira adequada de iterar por meio de dados de uma NSURLSession para criar um objeto de usuário.

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)
}

Agora, ele vai para o próximo controlador de View apropriadamente, porém apenas trava. Eu coloquei declarações de impressão no final (print("Finished Login Attempt!")) como você pode ver e no viewDidLoad() e eu vejo a declaração do viewDidLoad deo novo ViewController, mas nunca a "Tentativa de login concluída". Portanto, estou presumindo que estou executando a NSURLSession incorretamente, visto que este é provavelmente um conjunto bastante básico de ações para um aplicativo.

Felicidades

Respostas:

1 para resposta № 1

tente executá-lo em MainThread

dispatch_async(dispatch_get_main_queue(), { () -> Void in
self.handleLoginAttempt(data!)
print("Finished Login Attempt!")
})