1use std::io;
2
3extern crate parfait;
4use parfait::*;
5
6post!("/path", handle_post => r#"examples\test4\file.json"#, "application/json");
7
8#[tokio::main]
9async fn main() -> io::Result<()> {
10 let handler = Handler {
11 get_handler: None,
12 post_handler: Some(|_, _, _| {
13 match std::fs::read_to_string("examples\\test4\\file.json") {
15 Ok(content) => {
16 if let Some(json_data) = parse_json(&content) {
18 let response_json = generate_json_response(json_data);
20 Some(format!("HTTP/1.1 200 OK\r\nContent-Type: application/json\r\n\r\n{}", response_json))
21 } else {
22 Some("HTTP/1.1 500 INTERNAL SERVER ERROR\r\n\r\nFailed to parse JSON".to_owned())
23 }
24 },
25 Err(_) => Some("HTTP/1.1 500 INTERNAL SERVER ERROR\r\n\r\nFailed to read file".to_owned()),
26 }
27 }),
28 put_handler: None,
29 delete_handler: None,
30 };
31 run("127.0.0.1", 8080, handler).await
32}