Wasm

Attention

The Wasm filter is experimental and is currently under active development. Capabilities will be expanded over time and the configuration structures are likely to change.

The HTTP Wasm filter is used to implement an HTTP filter with a Wasm plugin.

Note

This filter is not supported on Windows.

Example configuration

Example filter configuration:

24                route:
25                  cluster: web_service
26
27          http_filters:
28          - name: envoy.filters.http.wasm
29            typed_config:
30              "@type": type.googleapis.com/envoy.extensions.filters.http.wasm.v3.Wasm
31              config:
32                name: "my_plugin"
33                root_id: "my_root_id"
34                # if your wasm filter requires custom configuration you can add
35                # as follows
36                configuration:
37                  "@type": "type.googleapis.com/google.protobuf.StringValue"
38                  value: |
39                    {}
40                vm_config:
41                  vm_id: "my_vm_id"
42                  code:
43                    local:
44                      filename: "lib/envoy_filter_http_wasm_example.wasm"
45          - name: envoy.filters.http.router
46            typed_config:
47              "@type": type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
48  - name: listener_1
49    address:

The preceding snippet configures a filter from a Wasm binary on local disk.