Ответ No
. Codable
декодирует только значения, найденные в json
.Более того, нет необходимости, если вы добавляете enum CodingKeys: String, CodingKey
к каждому Codable
протоколу.Вы можете оставить это с нулевым значением.
Мы используем для записи enum CodingKeys: String, CodingKey
, если ключ не является змеиным.Но у Codable есть свои keyDecodingStrategy
let jsonString = """
[
{
"profile_name": "Ankur Lahiry",
},
{
"profile_name": "Karim Rahman",
}
]
"""
let jsonData = Data(jsonString.utf8)
struct Name : Codable {
var profileName: String?
}
let decoder = JSONDecoder()
decoder.keyDecodingStrategy = .convertFromSnakeCase // will solve enum CodingKeys: String, CodingKey issue
do {
let names = try decoder.decode([Name].self, from: jsonData)
print(names)
} catch {
print("error")
}