在请求转发给目标后端服务或后端服务的响应返回给客户端之前,Header修改策略可以修改原始请求中的Header。本文介绍云原生网关如何设置请求和响应的Header。
实例内路由策略仅在对应实例可见并管理,实例外API的策略配置通过控制台首页的全局API列表统一管控。
设置Header规则
登录云原生API网关控制台。
配置Header修改策略有以下两种方式:
实例内API
在左侧导航栏,选择实例,并在顶部菜单栏选择地域。
在实例页面,单击目标网关实例ID。
选择左侧导航栏的API,单击目标API。选择路由列表中的目标路由。
实例外API
在左侧导航栏,选择API,并在顶部菜单栏选择地域。
单击目标API。选择路由列表中的目标路由。
选择右侧策略配置页签,然后单击启用策略/插件。
选择Header修改策略,并配置相关参数后,单击添加。
参数
描述
开启
开启:开启Header修改策略后,网关会控制请求和响应的Header。
关闭:关闭Header修改策略后,网关不会控制请求和响应的Header。
Header类型
选择Header类型,包括请求和响应。
请求:表示将会对请求的Header进行设置。
响应:表示将会对响应的Header进行设置。
操作类型
选择操作类型,包括新增、修改和删除。
新增:向请求或响应新增一个Header。
说明如果新增的Header已存在,那么Header Value将会拼接在已有的Header值后面,并通过英文逗号(,)分隔。
修改:修改请求或响应指定的Header。
说明如果指定的Header不存在,将会按照Header Key和Header Value进行新增操作。
如果指定的Header存在,将会进行覆盖修改操作。
删除:删除请求或响应指定的Header。
Header Key
输入请求或响应的头部名。
Header Value
输入请求或响应的头部值。
结果验证
假设添加一个测试的响应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