【发布时间】:2019-05-21 20:06:06
【问题描述】:
我根据我创建的结构列出了 Json 结果,但在解析时出现错误类型不匹配。在代码中创建结构时,我无法找到问题所在
我创建了基于 json 的结构,但它不适合我
["status": "1",
"error": false,
"data": [
{
"order_id": "11",
"order_unique_id": "ORDR-1001",
"store_name": "24X7",
"otp_store": "781103",
"product": [
"Product One",
"Product Two"
],
"qty": [
"1",
"3"
],
"user_details": {
"name": "test",
"number": "98145314586",
"landmark": "test",
"area": "Bow East",
"pincode": "E3 9EG",
"place": "Home"
},
"status": "2",
"date": "2018-12-13",
"time": "14:37:57"
}]
struct RunnerStatus: Decodable {
var status: String
var error: Bool
var data: [Runner]
}
struct Runner: Decodable {
var order_id: String
var order_unique_id: String
var store_name: String
var otp_store: String
var product: [Product]
var qty: [Quantity]
var user_details: [UserDetails]
var status: String
var date: String
var time: String
}
struct Product: Decodable {
var ProductName: String
}
struct Quantity: Decodable {
var qty: String
}
struct UserDetails: Decodable {
var name: String
var number: String
var landmark: String
var area: String
var pincode: String
var place: String
}
所有结构都应该与相关的值/数据绑定
【问题讨论】:
-
"an error typeMismatch.":向我们展示完整的错误。这样我们就可以帮助您理解它(这样您就可以自己解决类似的问题)、更快地解决问题等等。
-
将您的 json 转换为 struct codable 使用此链接:json4swift.com
-
@Larme 错误是错误序列化 json: typeMismatch(Swift.Dictionary
, Swift.DecodingError.Context(codingPath: [CodingKeys(stringValue: "data", intValue: nil) ], debugDescription: "期望解码 Dictionary 但找到了一个数组。",底层错误: nil)) -
这不可能是真正的错误。
data的类型是正确的。您应该会收到有关product和qty的错误。 -
@vadian 是的,但你能指出该地区吗,因为我不知道为什么会发生这种情况