#tonic #hyper #web-services #multiplex #routes #requests #multiplexer

multiplex-tonic-hyper

Merge a gRPC service and other HTTP service into one service

1 unstable release

0.1.0 Sep 11, 2022

#13 in #multiplex

Download history 120/week @ 2024-01-11 108/week @ 2024-01-18 188/week @ 2024-01-25 142/week @ 2024-02-01 117/week @ 2024-02-08 165/week @ 2024-02-15 123/week @ 2024-02-22 124/week @ 2024-02-29 110/week @ 2024-03-07 177/week @ 2024-03-14 148/week @ 2024-03-21 161/week @ 2024-03-28 109/week @ 2024-04-04 151/week @ 2024-04-11 118/week @ 2024-04-18 102/week @ 2024-04-25

511 downloads per month

MIT license

20KB
375 lines

Multiplex tonic hyper

  • Note: This is the first crate I made. Just publishing to try crates.io

This implements a service that routes requests based on Content-Type. If starts with application/grpc it sends to the inner gRPC service. If it doesn't, then it sends to the other service.

Examples

Try the examples:

Open the server, them try the web service at http://[::1]:9999.

cargo run --example hello_world_server
cargo run --example hello_world_client

lib.rs:

Crate to route requests between a tonic gRPC service, and some other service

The [Multiplexer] struct implements Service<Request>, and routes requests based on the Content-Type header.

Dependencies

~5–7MB
~117K SLoC