Swift 具有唯一键的ObjectMapper和数组
我在ObjectMapper和json响应从服务器返回的方式方面遇到了问题。 有没有办法让ObjectMapper解析此响应并创建房间数组 目前我无法直接映射json,因为键是唯一的,并且会更改每个请求,我也无法使用ObjectMapper方法访问带有点符号的嵌套对象,Swift 具有唯一键的ObjectMapper和数组,swift,objectmapper,Swift,Objectmapper,我在ObjectMapper和json响应从服务器返回的方式方面遇到了问题。 有没有办法让ObjectMapper解析此响应并创建房间数组 目前我无法直接映射json,因为键是唯一的,并且会更改每个请求,我也无法使用ObjectMapper方法访问带有点符号的嵌套对象,rooms.0.key,因为我不确定有多少个对象以及将显示的键 有没有一种简单的方法来解析这个响应 使用Codable解析上述JSON响应 型号: struct Rooms: Codable { let rooms: [
rooms.0.key
,因为我不确定有多少个对象以及将显示的键
有没有一种简单的方法来解析这个响应
使用
Codable
解析上述JSON响应
型号:
struct Rooms: Codable {
let rooms: [String:Room]
}
struct Room: Codable {
let id: String
let area: Area
}
struct Area: Codable {
let squareFeet: Int
let squareMeters: Int
}
解析JSON数据
就像这样
do {
let decoder = JSONDecoder()
decoder.keyDecodingStrategy = .convertFromSnakeCase
let response = try decoder.decode(Rooms.self, from: data)
print(response.rooms.first?.key) //for the above json it will print "165476"
} catch {
print(error)
}
在此处以文本格式添加Json。@PGDev添加到问题中。删除
ObjectMapper
,选择Codable
do {
let decoder = JSONDecoder()
decoder.keyDecodingStrategy = .convertFromSnakeCase
let response = try decoder.decode(Rooms.self, from: data)
print(response.rooms.first?.key) //for the above json it will print "165476"
} catch {
print(error)
}