通用表达式语言 (CEL) (proto)

警告

此 API 功能目前正在开发中。标记为正在开发中的 API 功能不被视为稳定,不受 威胁模型 的保护,不受安全团队支持,并且可能会发生重大更改。在了解所有先前要点之前,请勿使用此功能。

.xds.type.v3.CelExpression

[.xds.type.v3.CelExpression proto]

解析或检查的 通用表达式语言 (CEL) 程序表示。

{
  "parsed_expr": {...},
  "checked_expr": {...},
  "cel_expr_parsed": {...},
  "cel_expr_checked": {...}
}
parsed_expr

(.google.api.expr.v1alpha1.ParsedExpr) 以抽象语法树 (AST) 形式解析的表达式。

已弃用 - 使用 cel_expr_parsed 字段代替。如果设置了 cel_expr_parsedcel_expr_checked,则不使用此字段。

parsed_exprchecked_expr 可以设置。

checked_expr

(.google.api.expr.v1alpha1.CheckedExpr) 以抽象语法树 (AST) 形式解析的表达式,已成功进行类型检查。

已弃用 - 使用 cel_expr_checked 字段代替。如果设置了 cel_expr_parsedcel_expr_checked,则不使用此字段。

parsed_exprchecked_expr 可以设置。

cel_expr_parsed

(.cel.expr.ParsedExpr) 以抽象语法树 (AST) 形式解析的表达式。

如果设置了 cel_expr_checked,则不使用此字段。

cel_expr_checked

(.cel.expr.CheckedExpr) 以抽象语法树 (AST) 形式解析的表达式,已成功进行类型检查。

如果设置,则优先于 cel_expr_parsed

.xds.type.v3.CelExtractString

[.xds.type.v3.CelExtractString proto]

通过针对标准化 HTTP 属性 集评估 通用表达式语言 (CEL) 表达式来提取字符串。

注意

除了 CEL 评估显式引发错误外,CEL 程序返回类型不是 string 类型或不返回任何内容,也被视为错误。

{
  "expr_extract": {...},
  "default_value": {...}
}
expr_extract

(.xds.type.v3.CelExpression, REQUIRED) 用于从 CEL 环境中提取字符串的 CEL 表达式。 (要替换的“主题字符串”。)

default_value

(StringValue) 如果 CEL 表达式评估为错误,则此值将返回给调用方。如果未设置,则错误将传播给调用方。