在请求转发给目标后端服务或后端服务的响应返回给客户端之前,Header设置可以修改原始请求中的Header。本文介绍云原生网关如何设置请求和响应的Header。
设置Header规则
登录MSE网关管理控制台,并在顶部菜单栏选择地域。
在左侧导航栏,选择云原生网关 > 网关列表,单击目标网关名称。
在左侧导航栏,单击路由管理,然后选择路由页签。
在需要变更的路由规则操作列单击策略配置。
在策略配置区域单击Header 修改,单击右侧的或添加新规则。
在Header设置规则列表中填写规则参数,然后单击右上方的保存。
参数
描述
Header类型
选择Header类型,包括请求和响应。
请求:表示将会对请求的Header进行设置。
响应:表示将会对响应的Header进行设置。
操作类型
选择操作类型,包括新增、修改和删除。
新增:向请求或响应新增一个Header。
说明如果新增的Header已存在,那么Header Value将会拼接在已有的Header值后面,并通过英文逗号(,)分隔。
修改:修改请求或响应指定的Header。
说明如果指定的Header不存在,将会按照Header Key和Header Value进行新增操作。
如果指定的Header存在,将会进行覆盖修改操作。
删除:删除请求或响应指定的Header。
Header Key
输入请求或响应的头部名。
Header Value
输入请求或响应的头部值。
Header设置规则配置完成后,打开开启右侧的开关。
开启:开启Header修改策略后,网关会控制请求和响应的Header。
关闭:关闭Header修改策略后,网关不会控制请求和响应的Header。
结果验证
假设添加一个测试的响应Header,如下图所示,您可以根据实际业务场景进行设置。
执行以下测试请求命令:
curl -I http://121.196.XX.XX/demo/item/list // 网关入口IP
响应结果(返回带有
test:demo
的Header值):HTTP/1.1 200 OK x-content-type-options: nosniff x-xss-protection: 1; mode=block cache-control: no-cache, no-store, max-age=0, must-revalidate pragma: no-cache expires: 0 x-frame-options: DENY content-type: application/json content-length: 86 date: Tue, 30 Nov 2021 03:03:04 GMT x-envoy-upstream-service-time: 4 test: demo server: istio-envoy