Skip to content

Latest commit

 

History

History
34 lines (23 loc) · 1.28 KB

README.md

File metadata and controls

34 lines (23 loc) · 1.28 KB

grpc-over-http Documentation

gRPC over http is a very simple proxy that simply forwards HTTP/1.1 and Websocket requests to a gRPC server. Unlike some of the bigger frameworks out there (notably grpc-gateway), grpc-over-http doesn't offer any types of transforms or path remapping, it simply forwards raw protobufs to the gRPC server.

It is expected to be run in the same process as gRPC, to avoid having to change run any additional infrastructure, or have modifications to any of the proto definitions.

Motivation

The primary motivation of grpc-over-http is for environments or setups where HTTP/2 or gRPC libraries are not fully supported. Some examples include nlegacy Load Balancers, or some multi-platform client libraries.

Protocol

The path for both unary and streaming requests are: /api/<service>/<Method>

Unary Requests

Unary requests

  • Method: POST
  • Content-type: application/protobuf
  • Body: <raw-proto-bytes>

Streaming Requests (client, server, or bidirectional)

Streaming requests use websockets, where the payloads in both directions are binary messages, containing the raw proto payload.