Crate envoy_sdk

Source
Expand description

Rust SDK for WebAssembly-based Envoy extensions.

§TLDR

/// My very own `HttpFilter`.
struct MyHttpFilter;

impl HttpFilter for MyHttpFilter {
    fn on_request_headers(&mut self, _num_headers: usize, _end_of_stream: bool, _ops: &dyn RequestHeadersOps) -> Result<FilterHeadersStatus> {
        log::info!("proxying an HTTP request");
        Ok(FilterHeadersStatus::Continue)
    }
}

§Supported Extension Types

Envoy SDK can help you to develop the following types of extensions:

§Supported Envoy APIs

You can use the following Envoy APIs in your extensions:

§Example extensions

§How To

Modules§

error
The Error type and helpers.
extension
Envoy Extension APIs to be implemented by extensions.
host
Envoy Host APIs provided for use by extensions.

Macros§

entrypoint
Generates the _start function that will be called by Envoy to let WebAssembly module initialize itself.