假设我有以下结构:
struct Event: Codable {
var id: Int
.... // many non nested fields
}
在我的应用程序中,允许用户创建事件列表。一旦用户完成,我想通过POST请求将该列表传递给我的服务器。
为了做到这一点,我需要创建一个看起来像这样的有效JSON对象。这是Event
的列表,前导密钥为"events"
。
{ "events": [{"id": 1, ... more of the non nested fields ... },{ ... }]}
如何设置我的Event
对象,使JSONEncoder.encode(events)
返回上面预期的JSON?我真的很想避免每个字段都有一个CodingKey,因为在这种情况下,它们编码、解码都很好。我还希望避免将这个Event
对象嵌套在另一个名为Events
的结构中,以获得所需的结果。
您只需编码一个字典,即可将events
数组与密钥"events"
关联起来
JSONEncoder.encode(["events": events])