also added client
This commit is contained in:
parent
f89b0f8a81
commit
de2d6ea8f5
@ -1,5 +1,38 @@
|
||||
mod grpc;
|
||||
use tokio_stream::{self as stream};
|
||||
use tonic::Request;
|
||||
|
||||
fn main (){
|
||||
println!("Hello! I am a client!");
|
||||
use grpc::dummy::{test_service_client::TestServiceClient, Empty, SomeRequest, StreamRequest};
|
||||
|
||||
#[tokio::main]
|
||||
async fn main() -> Result<(), Box<dyn std::error::Error>> {
|
||||
let mut client = TestServiceClient::connect("http://[::1]:50051").await?;
|
||||
|
||||
let request =
|
||||
Request::new(SomeRequest { what_client_sends: String::from("Hello from client!") });
|
||||
|
||||
let response = client.get_something(request).await?;
|
||||
println!("Unary response: {:?}", response.get_ref().what_server_sends);
|
||||
|
||||
let messages = vec![
|
||||
StreamRequest { what_client_sends: "Client stream #1".to_string() },
|
||||
StreamRequest { what_client_sends: "Client stream #2".to_string() },
|
||||
StreamRequest { what_client_sends: "Client stream #3".to_string() },
|
||||
];
|
||||
|
||||
let outbound = stream::iter(messages);
|
||||
|
||||
let response = client.client_messages(Request::new(outbound)).await?;
|
||||
println!("Client streaming response: {:?}", response.get_ref());
|
||||
|
||||
let mut stream = client.server_messages(Request::new(Empty {})).await?.into_inner();
|
||||
|
||||
println!("Server streaming messages:");
|
||||
while let Some(item) = stream.message().await? {
|
||||
println!(" -> {}", item.what_server_sends);
|
||||
}
|
||||
|
||||
println!("Server stream ended.");
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user