# http_parser
Converts raw request to `Request` and build `Response`s
### Parse the raw http request to `Request`
```rust
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);
let request = simple_http_parser::Request::from(raw_request);
```
### And now you can use `Request` properties to build a `Response` and send it
```rust
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()
}
```