mirror of
https://github.com/alibaba/higress.git
synced 2026-06-09 04:37:31 +08:00
Add plugins (#27)
This commit is contained in:
49
plugins/wasm-go/README.md
Normal file
49
plugins/wasm-go/README.md
Normal file
@@ -0,0 +1,49 @@
|
||||
## Intro
|
||||
|
||||
This SDK is used to develop the WASM Plugins of MSE Gateway (powered by envoy).
|
||||
|
||||
## Requirements
|
||||
|
||||
(need support Go's type parameters)
|
||||
|
||||
Go version: >= 1.18
|
||||
|
||||
TinyGo version: >= 0.25.0
|
||||
|
||||
## Quick Examples
|
||||
|
||||
### wasm plugin config
|
||||
|
||||
```yaml
|
||||
# this config will take effect globally (all incoming requests are affected)
|
||||
block_urls:
|
||||
- "test"
|
||||
_rules_:
|
||||
# matching by route name takes effect
|
||||
- _match_route_:
|
||||
- route-a
|
||||
- route-b
|
||||
block_bodys:
|
||||
- "hello world"
|
||||
# matching by domain takes effect
|
||||
- _match_domain_:
|
||||
- "*.example.com"
|
||||
- test.com
|
||||
block_urls:
|
||||
- "swagger.html"
|
||||
block_bodys:
|
||||
- "hello world"
|
||||
```
|
||||
|
||||
### code
|
||||
|
||||
[request-block](example/request-block)
|
||||
|
||||
|
||||
### compile to wasm
|
||||
|
||||
```bash
|
||||
tinygo build -o main.wasm -scheduler=none -target=wasi ./main.go
|
||||
```
|
||||
|
||||
|
||||
Reference in New Issue
Block a user