大家好,我有一个 json 对象,存在不规则响应的问题,有时它不会发送我的模型中的一些键和值,例如:
struct GetComments: Codable {
let name, surname: String
let photoPath: String
let commentid, comment, date: String
let commentOwner: String
let id : String
let email: String
}
我尝试为模型提供一些初始值,如下所示,但它仍然崩溃:
struct GetComments: Codable {
let name, surname: String = “”
let photoPath: String = “”
let commentid, comment, date: String = “”
let commentOwner: String = “”
let id : String = “”
let email: String = “”
}
充满了我的 json 对象,例如:
{
“name”:"Calvin",
“surname”:“Harris”,
“photoPath”: "https://image.flaticon.com/icons/png/128/181/181549.png",
“commentid”: “ASHF579OTUJKDH475870987NBMVK”,
“comment”: “hello everyone”,
“date”: “11/06/2019",
“commentOwner”: “Calvin Harris”,
“id”: “LHKHOYIYU9OTUJKDH475870987NBMVK”,
“email”: “calvin@test.com”
}
当我收到它时问题就开始了:
{
“name”:“Calvin”,
“surname”:“Harris”,
“commentid”: “ASHF579OTUJKDH475870987NBMVK”,
“comment”: “hello everyone”,
“date”: “11/06/2019",
“commentOwner”: “Calvin Harris”,
“id”: “LHKHOYIYU9OTUJKDH475870987NBMVK”,
}
最佳答案
只需将结构成员声明为可选,可以是nil
struct GetComments: Codable {
let name, surname: String
let photoPath: String? // can also be decoded as URL?
let commentid, comment, date: String
let commentOwner: String
let id : String
let email: String?
}
关于json - 当某些值甚至不是 nil(缺失或不存在)时,我如何快速处理 JSON 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56558054/