simple_http_parser 0.2.4

Converts raw http request to a Request and build Response
Documentation

http_parser

Converts raw request to Request and build Responses

Parse the raw http request to Request

    for stream in listener.incoming(){
        let mut tcp_stream = stream.unwrap();
        
        let mut buffer = [0; 16384];
        tcp_stream.read(&mut buffer).expect("Error reading stream");

        let raw_request = String::from_utf8_lossy(&buffer).to_string();
        let request = simple_http_parser::Request::from(raw_request);

And now you can use Request properties to build a Response and send it

        let mut response = simple_http_parser::Response::new();

        if request.path == "/" {
            response.set_body("Hello, World!".to_owned());
        } else {
            response.set_header("Content-Type", "application/json")
            response.set_body(format!("{{\n\t\"actualPath\":\"{}\"\n}}", request.path));
        }

        tcp_stream.write_all(response.build().as_bytes()).unwrap()
    }