问题描述
这是手头的json。我能够解析除“ clientDetails”字典之外的所有数据。这是我的代码。我只是不确定如何映射“ clientDetails”字典。我应该采取一种完全不同的方法吗?还是我在正确的轨道上?。
{
"data": {
"userID": "124","techID": "1233","clientID": "1","Name": "Haibert","lastName": "Chiem","emailAddress": "[email protected]","additionalCompanies": "","clientDetails": {
"clientID": "1","FirstName": "Sam","LastName": "Ka","email": "[email protected]","CustomerName": "SimplyRem","BusinessAddress": "9863 N. Glenoaks Blvd,Ste. 207F","BusinessCity": "Burbank","BusinessState": "","BusinessZip": "91502","BusinessCountry": "USA","BusinessPhone": "(818)457-9507","BusinessFax": null,"MobilePhone": "818-378-9507","ContactName": "Samuel Kaz","ContactTitle": "Owner","ContactPhone": "818-624-9507","ContactEmail": "[email protected]","lastUpdated": "2020-10-24 15:09:17"
}
}
}
struct UserInformation: Decodable {
var userID: String = ""
var clientID: String = ""
var Name: String = ""
var lastName: String = ""
var emailAddress: String = ""
var techID: String = ""
var additionalCompanies: String = ""
private enum DataKeys: String,CodingKey {
case userID = "userID"
case clientID = "clientID"
case Name = "Name"
case lastName = "lastName"
case emailAddress = "emailAddress"
case techID = "techID"
case additionalCompanies = "additionalCompanies"
}
private enum DataResponseKeys: String,CodingKey {
case data
}
init(from decoder: Decoder) throws {
if let dataResponseContainer = try? decoder.container(keyedBy: DataResponseKeys.self) {
if let dataContainer = try? dataResponseContainer.nestedContainer(keyedBy: DataKeys.self,forKey: .data) {
self.userID = try dataContainer.decode(String.self,forKey: .userID)
self.clientID = try dataContainer.decode(String.self,forKey: .clientID)
self.Name = try dataContainer.decode(String.self,forKey: .Name)
self.lastName = try dataContainer.decode(String.self,forKey: .lastName)
self.emailAddress = try dataContainer.decode(String.self,forKey: .emailAddress)
self.techID = try dataContainer.decode(String.self,forKey: .techID)
self.additionalCompanies = try dataContainer.decode(String.self,forKey: .additionalCompanies)
}
}
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)