【发布时间】:2021-08-27 06:49:43
【问题描述】:
好的,几天前我收到了这个奇怪的 JSON 格式,我不知道是否可以解码,但我想知道是否可以。
{
"status" : true,
"orderHistory": {
"5" : {
"productId" : 0,
"productName" : "Anchovy",
"quantity" : 1,
"price" : "199"
"variation": ""
},
"17" : {
"productId" : 0,
"productName" : "Anchovy",
"quantity" : 1,
"price" : "199"
"variation": ""
},
"98" : {
"productId" : 0,
"productName" : "Anchovy",
"quantity" : 1,
"price" : "199"
"variation": ""
}
}
}
Order History 应该是一个数组,但在这种情况下,后端发送这些带有随机字符串键的对象,我们无法创建可解码模型的原因是键是随机的,
关于如何解码这些数据并将其用于我们的 iOS 应用程序的任何想法?
【问题讨论】:
-
没有必要把婴儿和洗澡水一起扔出去。您仍然可以在此处使用
JSONDecoder。 -
JSONSerialization,但您仍然可以在某些时候将JSONDecoder与属性一起使用:let orderHistory: [String: [OrderHistoryDecodableStruct]] -
您的 JSON 数据集无效,因为价格键后面没有逗号。