Swift:解码 API 调用中返回的对象数组

Swift: Decoding an array of objects returned in API call

我对此一无所知。我正在点击 API 其中 returns 以下对象数组:

[{
    "flightNumber": "VS0012",
    "aircraftReg": "GAAAA",
    "dateTime": "2015-12-16T16:49:14+0000",
    "fuelGrade": "Jet A-1",
    "freezePoint": "-47",
    "supplier": "stage",
    "specificGravity": "798"
}, {
    "flightNumber": "BA0234",
    "aircraftReg": "GAAAA",
    "dateTime": "2016-01-11T17:53:23+0000",
    "fuelGrade": "Jet A-1",
    "freezePoint": "-47",
    "supplier": "stage",
    "specificGravity": "797"
}]

我创建了一个模型来解码它:

struct LastTenOrders: Codable {
    let flightNumber: String?
    let aircraftReg: String?
    let dateTime: String?
    let fuelGrade: String?
    let freezePoint: String?
    let supplier: String?
    let specificGravity: String?
}

我只想知道我的大脑是否完全冻结,或者这是否确实是我应该使用的正确结构。

是的,它足够好..你可以像这样使用typeAlias

typealias AllOrders = [LastTenOrders]

let orders = try JSONDecoder().decode(AllOrders.self, from: jsonData)

或者你可以直接做

let orders = try? JSONDecoder().decode([LastTenOrders].self, from: jsonData)