/ / Мога ли да обявя променлива, наречена 'Type' в Swift? [дубликат] - json, swift, struct, decode, decodable

Мога ли да декларирам променлива с име "Тип" в Swift? [дубликат] - json, бърз, структуриран, декодиран, декодиращ

Използвам някой друг API. Той ми връща JSON.

[{"ID": 123,
"Name": "My Game Api",
"Type": "Racing",
"Num": 0,
"Country": "England"
}]

Аз дефинирам struct за разбор на JSON, като този:

struct MyResult : Decodable{
var ID : Int?
var Name : String?
var Type : String?
var Num : Int?
var Country : String?
}
// Using..
let games = try JSONDecoder().decode([MyResult].self, from: data!)

Разбира се, xCode ми дава грешка: Членът на типа може да не се нарича "Type", тъй като би противоречал на израза "foo.Type".

Не написах API. Ако променя името на променливата Тип, Не мога да прочета стойността.

Мога ли да използвам Decodable Struct без да променям API?

Отговори:

0 за отговор № 1

Можете да използвате по-долу:

struct MyResult : Decodable {
var ID : Int?
var Name : String?
var type : String?
var Num : Int?
var Country : String?

private enum CodingKeys : String, CodingKey {
case ID, Name, type = "Type", Num, Country
}
}

Опитайте се да следвате коментарите, публикувани от Hamish