При отправке post-запроса на сервер и вызове alert об успешном создании события, получаю ошибку:
"Assertion failure in -[UIKeyboardTaskQueue waitUntilAllTasksAreFinished], /BuildRoot/Library/Caches/com.apple.xbs/Sources/UIKit_Sim/UIKit-3600.5.2/Keyboard/UIKeyboardTaskQueue.m:432
2016-11-30 15:55:14.158 SCA[10071:106324] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: '-[UIKeyboardTaskQueue waitUntilAllTasksAreFinished] may only be called from the main thread.'"
в этом куске кода:
func createEventPOSTRequest() {
let sgroundData = sportPlaceArray[index]
let params = ["sg_id":"\(self.sportPlaceArray[index].id!)",
"name":"\(self.eventName!)",
"time":"\(self.dateTimeForRequest!)",//2016-10-30T21:00:00.000Z
"user":"\(self.mainUserID!)"] as [String : Any]
do {
let opt = try HTTP.POST(hostName + "/events/newEvent", parameters: params)
opt.start { response in
if response.statusCode == 200 {
//FIXME: Здесь ошибка - вызывается не в основном потоке
self.showAlert(title: "Вы успешно создали событие", message: "\(self.eventName!)\n\(sgroundData.address!)\n\(self.dateTime!)")// здесь падает
} else {
self.showAlert(title: "Ошибка", message: "Что-то пошло не так.\nПопробуйте создать событие немного позже.")
return
}
}
} catch let error {
self.showAlert(title: "Ошибка", message: "Что-то пошло не так\nПроверьте соединение с сетью Интернет!")
print("Got an error creating the request: \(error)")
}
}
Как можно решить проблему?
P.S. Читал на http://stackoverflow.com/questions/39559751/uikeyboardtaskqueue-may-only-be-called-from-the-main-thread, пока сложно для понимания.