diff --git a/src/main.rs b/src/main.rs index 57271c6..026ff54 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,10 +1,24 @@ -use std::net::TcpListener; +use std::{ + io::{prelude::*, BufReader}, + net::{TcpListener, TcpStream}, +}; fn main() { let listener = TcpListener::bind("127.0.0.1:7878").unwrap(); for stream in listener.incoming() { - let _stream = stream.unwrap(); - println!("Connection Established!") + let stream = stream.unwrap(); + handle_connection(stream); } } + +fn handle_connection(mut stream: TcpStream) { + let buf_reader = BufReader::new(&mut stream); + let http_request: Vec<_> = buf_reader + .lines() + .map(|result| result.unwrap()) + .take_while(|line| !line.is_empty()) + .collect(); + + println!("Request: {:#?}", http_request); +}