Я пытаюсь использовать новый протокол Codable в своем приложении, но я не могу передать диалог из JSON на мой объект. Вот что у меня есть:
struct LoginCodableEntity: Codable {
let authToken: String? = ""
let status: String? = ""
let errorMessage: String? = ""
let errorCode: Int?
private enum CodingKeys: String, CodingKey {
case status
case errorMessage = "message"
case authToken = "auth_token"
case errorCode = "code"
}
}
Alamofire.request(API.login).responseJSON { (response) in
do {
let decoder = JSONDecoder()
let json = try decoder.decode(LoginCodableEntity.self, from: response.data!)
print("JSON: \(json)")
} catch let err {
print("Err", err)
}
}
Я получил ответ от своего API с данными, а json var получил приведение объекта, но поля в нем пусты:
JSON: LoginCodableEntity(authToken: Optional(""), status: Optional(""), errorMessage: Optional(""), errorCode: Optional(800))
Я сделал этот пример на основе этого учебника , но кажется, что-то не так с этими реализациями
Возвращенный JSON выглядит так:
JSON: Optional({
code = 910;
message = "Credentials denied";
status = error;
})