【发布时间】:2021-07-15 15:08:15
【问题描述】:
我目前正在使用 Rocket 开发一个 Web API,它使用以下结构来响应错误:
#[derive(Serialize, Deserialize)]
pub struct ErrorResponse {
code: u16,
reason: &'static str,
#[serde(skip_serializing_if = "Option::is_none")]
description: Option<String>,
}
实际上,序列化这个结构会产生类似这样的json:
{
"code": 400,
"reason": "Bad Request"
}
我希望以这种方式对其进行序列化:
{
"error": {
"code": 400,
"reason": "Bad Request"
}
}
不使用两种不同结构的最简单方法是什么?
提前感谢您的帮助!
【问题讨论】:
-
除非您为它实现自己的序列化/反序列化,否则我不确定它是否可行。