【发布时间】:2021-09-12 09:58:41
【问题描述】:
如何在没有键的情况下对结构进行反序列化/序列化?由于我不会更改字段的顺序,因此索引可以作为键来减少有效负载的大小。
我正在使用 serde_json 和 ciborium crates,它们都具有顶级数组值。
例如,
跟随 cbor/json
["string1", 1, 1.1, [4, 34, 4, 4]]
应该转换成这个
struct Foo {
a: String,
b: u128,
c: f64,
d: Vec<u8>,
}
我可以通过使用 ciborium crate 的 Value::array 枚举来手动执行此操作,但我最终会编写更多代码,并且无法使用 serde_bytes crate 有效解码 Vec<u8>
【问题讨论】:
-
您可以为
S1编写自己的impl或Deserialize:serde.rs/impl-deserialize.html