Неверное преобразование из функции throwing типа '(_, _) throws -> ()' в тип функции non-throwing '(JSON ?, Ошибка?) -> Void' - PullRequest
0 голосов
/ 29 апреля 2018

У меня ошибка

        EduappRestClient.request(with: URLString, method: .post, parameters: parameters) { (json, error) in
        guard error == nil, let json = json else {
            completion(nil, error)
            return
        }
        let result = try JSONDecoder().decode(QuestionModel.self, from: json)
        completion(result, nil)
    }

я вызываю API, и мой полный исходный код можно найти по адресу https://github.com/WilliamLoke/quizApp

Могу ли я знать, в чем заключается проблема с этой строкой кода ошибки?

1 Ответ

0 голосов
/ 29 апреля 2018

Поскольку этот блок не должен выдавать ошибку, вам нужно заключить вызов в 100 * * блок:

EduappRestClient.request(with: URLString, method: .post, parameters: parameters) { (json, error) in
    guard error == nil, let json = json else {
        completion(nil, error)
        return
    }
    do {
        let result = try JSONDecoder().decode(QuestionModel.self, from: json)
        completion(result, nil)
    } catch let error {
        completion(nil, error)
    }
}
...