包含匹配条件和要执行的扩展程序的单个扩展程序链封装容器。
JSON 表示法 |
---|
{ "name": string, "matchCondition": { object ( |
字段 | |
---|---|
name |
必需。此扩展程序链的名称。该名称会作为 HTTP 请求日志的一部分进行记录。名称必须符合 RFC-1034 的要求,仅限使用小写字母、数字和连字符,且长度上限为 63 个字符。此外,第一个字符必须是字母,最后一个字符必须是字母或数字。 |
matchCondition |
必需。为请求调用此链的条件。 |
extensions[] |
必需。要针对匹配请求执行的一组扩展程序。必须至少选择一个扩展程序。可以为 |
MatchCondition
为请求调用此链的条件。
JSON 表示法 |
---|
{ "celExpression": string } |
字段 | |
---|---|
celExpression |
必需。通用表达式语言 (CEL) 表达式,用于匹配执行扩展程序链的请求。 如需了解详情,请参阅 CEL 匹配器语言参考文档。 |
扩展程序
链中要针对匹配请求执行的单个扩展程序。
JSON 表示法 |
---|
{
"name": string,
"authority": string,
"service": string,
"supportedEvents": [
enum ( |
字段 | |
---|---|
name |
必需。此扩展程序的名称。该名称会作为 HTTP 请求日志的一部分进行记录。名称必须符合 RFC-1034 的要求,仅限使用小写字母、数字和连字符,且长度上限为 63 个字符。此外,第一个字符必须是字母,最后一个字符必须是字母或数字。 |
authority |
可选。从 Envoy 发送到扩展程序服务的 gRPC 请求中的 |
service |
必需。对运行扩展程序的服务的引用。 目前,此处仅支持宣传信息扩展程序。 如需配置宣传信息扩展程序, |
supportedEvents[] |
可选。在请求或响应处理期间调用此扩展程序的一组事件。此字段是 |
timeout |
可选。为数据流中每一条消息指定超时时间。超时时间必须介于 10 毫秒到 1,000 毫秒之间。对于宣传信息扩展程序是必需的。 该时长以秒为单位,最多包含九个小数位,以“ |
failOpen |
可选。确定在对扩展程序的调用失败或超时时,代理的行为方式。 如果设置为
|
forwardHeaders[] |
可选。要转发到此扩展程序(从客户端或后端)的 HTTP 标头的列表。如果省略,则系统会发送所有标头。每个元素都是一个字符串,用于指明标头名称。 |
EventType
调用扩展程序的请求或响应的部分。
枚举 | |
---|---|
EVENT_TYPE_UNSPECIFIED |
未指定的值。请勿使用。 |
REQUEST_HEADERS |
如果包含在 supportedEvents 中,则在 HTTP 请求标头到达时调用该扩展程序。 |
REQUEST_BODY |
如果包含在 supportedEvents 中,则在 HTTP 请求正文到达时调用该扩展程序。 |
RESPONSE_HEADERS |
如果包含在 supportedEvents 中,则在 HTTP 响应标头到达时调用该扩展程序。 |
RESPONSE_BODY |
如果包含在 supportedEvents 中,则在 HTTP 响应正文到达时调用该扩展程序。 |
REQUEST_TRAILERS |
如果包含在 supportedEvents 中,则在 HTTP 请求尾部到达时调用该扩展程序。 |
RESPONSE_TRAILERS |
如果包含在 supportedEvents 中,则在 HTTP 响应尾部达时调用该扩展程序。 |