我正在编写一个Rust应用程序,处理来自TypeScript客户端的JSON消息,并具有公共接口。我已经使用serde_derive
编写了一些代码,并且它运行良好,但我无法弄清楚如何实现字典;例如:
{
"foo" : { "data" : 42 },
"bar" : { "data" : 1337 }
}
这里的键是字符串"foo"
和"bar"
,字典的值遵循此模式:
use serde_derive;
use serde_json::Number;
#[derive(Serialize, Deserialize)]
struct DictionaryValue {
data: Number,
}
我希望以这种方式访问JSON数据:
#[derive(Serialize, Deserialize)]
struct Dictionary {
key: String,
value: DictionaryValue,
}
如何使用 Serde 将我的 JSON 数据序列化/反序列化成/自
Dictionary
?
BTreeMap
。你甚至可以自己实现一个。请参阅文档 这里 和 这里。 - Tim Diekmann