gRPC HTTP/1.1 reverse bridge
This filter should be configured with the name envoy.filters.http.grpc_http1_reverse_bridge.
This is a filter that enables converting an incoming gRPC request into a HTTP/1.1 request to allow a server that does not understand HTTP/2 or HTTP/3 or gRPC semantics to handle the request.
The content type is modified to a configurable value. This can be a noop by configuring .
The gRPC frame header is optionally stripped from the request body. The content length header will be adjusted if so.
The response body is optionally prefixed by the gRPC frame header, again adjusting the content length header if necessary.
Due to being mapped to HTTP/1.1, this filter will only work with unary gRPC calls.
By setting the withhold_grpc_frame option, the filter will assume that the upstream does not understand any gRPC semantics and will convert the request body into a simple binary encoding of the request body and perform the reverse conversion on the response body. This ends up simplifying the server side handling of these requests, as they no longer need to be concerned with parsing and generating gRPC formatted data.
If this feature is not used, the upstream must be ready to receive HTTP/1.1 requests prefixed with the gRPC frame header and respond with gRPC formatted responses.