[][src]Crate envoy_sdk

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, _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

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.