pub async fn call_server_streaming(
req: &RequestMessage,
tls: Option<TlsConfig>,
) -> Result<StreamingResponse>
Expand description
Creates a new gRPC
client and sends a message to a gRPC
server.
This method is async.
ยงErrors
- Internal error calling the
gRPC
server
Examples found in repository?
examples/streaming.rs (line 25)
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
async fn main() -> Result<()> {
let desc = ProtoDescriptor::new(
vec!["/Users/philippreiter/Rust/wireman/example/server/streaming"],
vec!["streaming.proto"],
)?;
let service = &desc.get_services()[0];
let method = &desc.get_methods(service)[0];
if !method.is_server_streaming() {
println!("Method must be server streaming");
}
let mut request = desc.get_request(&method);
request.set_address("http://localhost:50051");
let response = call_server_streaming(&request, None).await?;
let mut pinned = std::pin::pin!(response);
let stream = pinned.as_mut().get_mut();
while let Some(message) = stream.next().await {
let message = message?;
println!("message: {:?}", message.message);
println!();
}
Ok(())
}