如何使用Rocket响应包含JSON数据的POST请求?
我正在尝试使用以下命令创建后端: 我已经将标题内容类型设置为JSON和其他可用的语言,但是使用Rocket我无法使其工作 这是我的JSON正文:如何使用Rocket响应包含JSON数据的POST请求?,json,api,rust,rust-rocket,Json,Api,Rust,Rust Rocket,我正在尝试使用以下命令创建后端: 我已经将标题内容类型设置为JSON和其他可用的语言,但是使用Rocket我无法使其工作 这是我的JSON正文: { "USR_Email": "test@test.it", "USR_Password": "500rockets", "USR_Enabled": 0, "USR_MAC_Address": "test test" } 如何解决这个问题?基本上是从 Cargo.toml: <snip> [depend
{
"USR_Email": "test@test.it",
"USR_Password": "500rockets",
"USR_Enabled": 0,
"USR_MAC_Address": "test test"
}
如何解决这个问题?基本上是从 Cargo.toml:
<snip>
[dependencies]
rocket = "0.4.2"
rocket_contrib = "0.4.2"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
请注意,
User
中的每个字段都必须以JSON格式存在,否则将引发400错误请求。您可能希望使用选项
。基本上逐字改编自
Cargo.toml:
<snip>
[dependencies]
rocket = "0.4.2"
rocket_contrib = "0.4.2"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
请注意,User
中的每个字段都必须以JSON格式存在,否则将引发400错误请求。您可能希望对其中一些表单使用选项
。表单
用于html表单(例如应用程序/x-www-Form-urlencoded
)。改为从rocket\u contrib
试试。@justinas我试过了,但也用dependencie我没有发现rocket\u contrib>键入的Json->可能是丢失的板条箱rocket\u contrib
,但我添加了cargo.toml刚刚写了一个正确的答案,请查看。Form
用于html表单(例如application/x-www-Form-urlencoded
). 改为从rocket\u contrib
试试。@justinas我试过了,但也用dependencie我没有发现rocket\u contrib>键入的Json->可能是丢失的板条箱rocket\u contrib
,但我添加了货物。Toml刚刚写了一个正确的答案,请查看。
$ curl -H 'Content-Type: application/json' \
--data '{"id": 123, "USR_Email": "abc@example.com", "USR_Password": "hunter2", "USR_Enabled": 1, "USR_MAC_Address": "ff:ff"}' \
http://localhost:8000/hello
print test Json(User { id: 123, USR_Email: "abc@example.com", USR_Password: "hunter2", USR_Enabled: 1, USR_MAC_Address: "ff:ff" })