Как напечатать результат ответа alamofire, используя кодируемый - PullRequest
0 голосов
/ 26 июня 2019

Впервые в codable, и я попытался создать класс для alamofire с codable и попытался сделать запрос API.Я получил ошибку Swift.DecodingError.typeMismatch, и я понял это из-за класса моей модели.Теперь мне нужно напечатать ответ alamofire в формате JSON (String) перед его декодированием, чтобы я мог определить typeMismatch

static func performRequest<T:Decodable>(route:APIRouter, decoder: JSONDecoder = JSONDecoder(), completion:@escaping (Result<T,Error>)->Void) -> DataRequest {

    return AF.request(route)
        .responseDecodable (decoder: decoder){ (response: DataResponse<T>) in
            print(response.result)
            completion(response.result)
    }
}

Я хочу, чтобы какой-то код печатал фактический результат из alamofire

1 Ответ

1 голос
/ 26 июня 2019

Вы можете распечатать необработанный Data в вашем responseDecodable закрытии, выбрав его из DataResponse:

print(response.data.map { String(decoding: $0, as: UTF8.self) } ?? "No data.")

Вы также можете добавить отдельный сериализатор, чтобы увидеть String:

.responseDecodable { }
.responseString { }
...