У меня есть API, где обычно он возвращает ответ, подобный этому:
{
"http_status": 200,
"error": false,
"message": "Success.",
"data": {
...
}
}
Однако, когда в запросе есть ошибка, ответ выглядит так:
{
"http_status": 409,
"error": true,
"message": "error message here",
"data": []
}
Когда я использую let decodedResponse = try JSONDecoder().decode(APIResponse.self, from: data)
в этой структуре:
struct APIResponse: Codable {
var http_status: Int
var error: Bool
var message: String
var data: APIData?
}
и в случае, когда произошла ошибка, я получаю ответ:
Expected to decode Dictionary<String, Any> but found an array instead
Где я хочу, чтобы данные были nil
в декодированном объекте.
Есть здесь какие-нибудь решения?
Спасибо!