April 2026
Intermediate
631 pages
16h 20m
English
This section provides the code solutions for the practice exercises in Section 16.4.
Reading and parsing HTTP request headers
use std::io::{BufRead, BufReader, Write};use std::net::{TcpListener, TcpStream};fn main() { let listener = TcpListener::bind("127.0.0.1:9000").unwrap(); println!("Server listening on 127.0.0.1:9000..."); for stream in listener.incoming() { match stream { Ok(mut stream) => { handle_connection(stream); } Err(e) => { println!("Error accepting connection: {}", e); } } }}fn handle_connection(mut stream: TcpStream) { let buf_reader = BufReader::new(&mut stream); let request_lines: Vec<String> = buf_reader .lines() .map(|result| result.unwrap()) .take_while(|line| !line.is_empty()) .collect(); let first_line ...
Read now
Unlock full access