@@ -4,8 +4,6 @@ use std::net::SocketAddr;
44
55use bytes:: Bytes ;
66use http_body_util:: { combinators:: BoxBody , BodyExt , Empty , Full } ;
7- use hyper:: client:: conn:: http1:: Builder ;
8- use hyper:: server:: conn:: http1;
97use hyper:: service:: service_fn;
108use hyper:: upgrade:: Upgraded ;
119use hyper:: { Method , Request , Response } ;
@@ -16,6 +14,9 @@ use tokio::net::{TcpListener, TcpStream};
1614mod support;
1715use support:: TokioIo ;
1816
17+ type ClientBuilder = hyper:: client:: conn:: http1:: Builder ;
18+ type ServerBuilder = hyper:: server:: conn:: http1:: Builder ;
19+
1920// To try this example:
2021// 1. cargo run --example http_proxy
2122// 2. config http_proxy in command line
@@ -35,7 +36,7 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
3536 let io = TokioIo :: new ( stream) ;
3637
3738 tokio:: task:: spawn ( async move {
38- if let Err ( err) = http1 :: Builder :: new ( )
39+ if let Err ( err) = ServerBuilder :: new ( )
3940 . preserve_header_case ( true )
4041 . title_case_headers ( true )
4142 . serve_connection ( io, service_fn ( proxy) )
@@ -94,7 +95,7 @@ async fn proxy(
9495 let stream = TcpStream :: connect ( ( host, port) ) . await . unwrap ( ) ;
9596 let io = TokioIo :: new ( stream) ;
9697
97- let ( mut sender, conn) = Builder :: new ( )
98+ let ( mut sender, conn) = ClientBuilder :: new ( )
9899 . preserve_header_case ( true )
99100 . title_case_headers ( true )
100101 . handshake ( io)
0 commit comments