Ошибка Swift Невозможно преобразовать значение типа '(AFHTTPRequestOperation?, AnyObject?) -> ()
После обновления xcode Version 8.0 (8A218a) swift 3 я получил эту ошибку
Не удалось преобразовать значение типа '(AFHTTPRequestOperation?, AnyObject?) -> () в ожидаемый тип аргумента "((AFHTTPRequestOperation?, Any?) -> Void)!"
Это следующий код, который показывает ошибку выше.
jsonmanager.post( "http://myapi.com",
parameters: nil,
success: { (operation: AFHTTPRequestOperation!,responseObject: AnyObject!) in
if(responseObject.object(forKey: "meta")?.object(forKey: "status")?.intValue == 200){....
Я делаю что-то неправильно?
Хорошо работает в предыдущей версии 7.3.1 swift 2.
1 ответ
Решение
Подпись метода обратного вызова изменилась. В Swift 2 это было
(AFHTTPRequestOperation?, AnyObject?) -> Void
В Swift 3 это
(AFHTTPRequestOperation?, Any?) -> Void
Вы должны изменить строку ниже
success: { (operation: AFHTTPRequestOperation!,responseObject: AnyObject!)
к
success: { (operation: AFHTTPRequestOperation?, responseObject: Any?)