配置Header设置策略

在请求转发给目标后端服务或后端服务的响应返回给客户端之前,Header设置可以修改原始请求中的Header。本文介绍云原生网关如何设置请求和响应的Header。

设置Header规则

  1. 登录云原生API网关控制台

  2. 在左侧导航栏,选择API管理,并在顶部菜单栏选择地域。

  3. 单击目标API,在API详情页面,单击目标路由名称。选择策略配置页签,然后单击Header 修改

    在右侧区域单击编辑图案添加新规则,在Header设置规则列表中填写规则参数,然后单击保存

    参数

    描述

    Header类型

    选择Header类型,包括请求响应

    • 请求:表示将会对请求的Header进行设置。

    • 响应:表示将会对响应的Header进行设置。

    操作类型

    选择操作类型,包括新增修改删除

    • 新增:向请求或响应新增一个Header。

      说明

      如果新增的Header已存在,那么Header Value将会拼接在已有的Header值后面,并通过英文逗号(,)分隔。

    • 修改:修改请求或响应指定的Header。

      说明
      • 如果指定的Header不存在,将会按照Header Key和Header Value进行新增操作。

      • 如果指定的Header存在,将会进行覆盖修改操作。

    • 删除:删除请求或响应指定的Header。

    Header Key

    输入请求或响应的头部名。

    Header Value

    输入请求或响应的头部值。

  4. Header设置规则配置完成后,打开开启开关。

    • 开启:开启Header修改策略后,网关会控制请求和响应的Header。

    • 关闭:关闭Header修改策略后,网关不会控制请求和响应的Header。

结果验证

假设添加一个测试的响应Header,如下图所示,您可以根据实际业务场景进行设置。

Header.png

执行以下测试请求命令:

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