Ошибка 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?)
Другие вопросы по тегам