如何将数据放入EnvoyFilter拦截的请求体中?

我正在尝试这样做,但它不起作用并且不显示任何错误。

apiVersion: networking.istio.io/v1alpha3
kind: EnvoyFilter
metadata:
  name: eva-decrypt-data
  namespace: eva
spec:
  configPatches:
    - applyTo: HTTP_FILTER
      match:
        context: ANY
        listener:
          filterChain:
            filter:
              name: "envoy.http_connection_manager"
      patch:
        operation: INSERT_BEFORE
        value:
          name: envoy.lua
          typed_config:
            "@type": "type.googleapis.com/envoy.config.filter.http.lua.v2.Lua"
            inlineCode: |
              function envoy_on_request(request_handle)
               local buffered = request_handle:body()
               buffered:setBytes("新的请求体数据")

原文链接 https://stackoverflow.com/questions/70393981

点赞
stackoverflow用户16391991
stackoverflow用户16391991

为了更好地被看到,基于评论,我发布了社区百科。欢迎扩展。

该问题已经解决。函数request\_handle:body():setBytes("")只适用于Istio 1.10以上版本:

问题在于Istio版本,request\_handle:body():setBytes("")仅适用于1.10以上版本。

2021-12-24 15:28:18