下面是我的 JSON,我无法解码(使用 CodingKeys) regions 键中的数据是一个字典(“IN-WB”、“IN-DL”等......),由于键是动态的,因此可以或多或少地进行更改.
请帮助我使用 Decodable 和 Codable 解析相同内容。
所有数据都应位于单个模型内。
{ "provider_code": "AIIN", "name": "Jio India", "regions": [ { "IN-WB": "West Bengal" }, { "IN-DL": "Delhi NCR" }, { "IN-TN": "Tamil Nadu" }, { "IN": "India" } ] }
最佳答案
只需使用区域字典即可。
struct Locations: Codable {
let providerCode: String
let name: String
let regions: [[String: String]]
enum CodingKeys: String, CodingKey {
case providerCode = "provider_code"
case name, regions
}
}
您无法为区域创建特定模型,因为您不知道属性名称
关于json - Swift,当 key 未知/动态时,如何使用 Decodable 和 Codable 解析/解码 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52531554/