在 envoy 中重命名现有的 http header
Rename the existing http header in envoy
我想重命名 envoy 配置中现有的 header,但我找不到任何相关文档,除了 Access header values by name from header modification options 没有任何响应。在envoy中是否有针对此要求的解决方案?
没有任何内置过滤器可以满足此要求,但可以使用 lua http filter。
name: envoy.lua
typed_config:
"@type": type.googleapis.com/envoy.config.filter.http.lua.v2.Lua
inline_code: |
function envoy_on_request(request_handle)
local originalHeader = request_handle:headers():get("A")
if originalHeader then
-- Use 'replace' instead of 'add' to overwrite any existing value of the target header
request_handle:headers():replace("B", originalHeader)
request_handle:headers():remove("A")
end
end
我想重命名 envoy 配置中现有的 header,但我找不到任何相关文档,除了 Access header values by name from header modification options 没有任何响应。在envoy中是否有针对此要求的解决方案?
没有任何内置过滤器可以满足此要求,但可以使用 lua http filter。
name: envoy.lua
typed_config:
"@type": type.googleapis.com/envoy.config.filter.http.lua.v2.Lua
inline_code: |
function envoy_on_request(request_handle)
local originalHeader = request_handle:headers():get("A")
if originalHeader then
-- Use 'replace' instead of 'add' to overwrite any existing value of the target header
request_handle:headers():replace("B", originalHeader)
request_handle:headers():remove("A")
end
end