10583cff8SDavid Pedersen use hello_world::greeter_client::GreeterClient; 20583cff8SDavid Pedersen use hello_world::HelloRequest; 3*a585a722SMarcus Griep use tonic::codec::CompressionEncoding; 40583cff8SDavid Pedersen use tonic::transport::Channel; 50583cff8SDavid Pedersen 60583cff8SDavid Pedersen pub mod hello_world { 70583cff8SDavid Pedersen tonic::include_proto!("helloworld"); 80583cff8SDavid Pedersen } 90583cff8SDavid Pedersen 100583cff8SDavid Pedersen #[tokio::main] main() -> Result<(), Box<dyn std::error::Error>>110583cff8SDavid Pedersenasync fn main() -> Result<(), Box<dyn std::error::Error>> { 120583cff8SDavid Pedersen let channel = Channel::builder("http://[::1]:50051".parse().unwrap()) 130583cff8SDavid Pedersen .connect() 140583cff8SDavid Pedersen .await 150583cff8SDavid Pedersen .unwrap(); 160583cff8SDavid Pedersen 17*a585a722SMarcus Griep let mut client = GreeterClient::new(channel) 18*a585a722SMarcus Griep .send_compressed(CompressionEncoding::Gzip) 19*a585a722SMarcus Griep .accept_compressed(CompressionEncoding::Gzip); 200583cff8SDavid Pedersen 210583cff8SDavid Pedersen let request = tonic::Request::new(HelloRequest { 220583cff8SDavid Pedersen name: "Tonic".into(), 230583cff8SDavid Pedersen }); 240583cff8SDavid Pedersen 250583cff8SDavid Pedersen let response = client.say_hello(request).await?; 260583cff8SDavid Pedersen 270583cff8SDavid Pedersen dbg!(response); 280583cff8SDavid Pedersen 290583cff8SDavid Pedersen Ok(()) 300583cff8SDavid Pedersen } 31