test4/
test4.rs

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            // Read the file content
14            match std::fs::read_to_string("examples\\test4\\file.json") {
15                Ok(content) => {
16                    // Parse the JSON data
17                    if let Some(json_data) = parse_json(&content) {
18                        // Generate JSON response
19                        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}