additional_fields/
additional_fields.rs1use serde::{Deserialize, Serialize};
2
3use http_api_problem::*;
4
5#[derive(Serialize, Deserialize)]
6struct Person {
7 name: String,
8 age: u8,
9}
10
11fn main() {
12 let problem = HttpApiProblem::with_title_and_type(StatusCode::INTERNAL_SERVER_ERROR)
13 .value("error", &"this sucks")
14 .value("everything", &42)
15 .value(
16 "person",
17 &Person {
18 name: "Peter".into(),
19 age: 77,
20 },
21 );
22
23 let json = problem.json_string();
24
25 println!("{}", json);
26
27 let parsed: HttpApiProblem = serde_json::from_str(&json).unwrap();
28
29 println!("\n\n{:#?}", parsed);
30}