更新时间:2024-11-27 GMT+08:00
分享

配置API的HTTP响应头

API响应是指API网关返回客户端的响应,HTTP响应头是API响应中的一部分。您可以自定义HTTP响应头,在返回的API响应中指定您配置的响应头。

  • 如果此策略在当前实例中不支持,请联系技术支持升级实例到最新版本。
  • 策略参数会明文展示,为防止信息泄露,请谨慎配置。

使用限制

  • 无法修改API网关增加的系统响应头(x-apig-*,x-request-id等),包括API网关提供的CORS功能增加的响应头。
  • 一个API只能绑定一个相同类型的策略。
  • 策略和API本身相互独立,只有为API绑定策略后,策略才对API生效。为API绑定策略时需指定发布环境,策略只对指定环境上的API生效。
  • 策略的绑定、解绑、更新会实时生效,不需要重新发布API。
  • API的下线操作不影响策略的绑定关系,再次发布后仍然会带有下线前绑定的策略。
  • 如果策略与API有绑定关系,则策略无法执行删除操作。

创建HTTP响应头策略

  1. 进入API网关控制台页面。
  2. 根据实际业务在左侧导航栏上方选择实例。
  1. 在左侧导航栏选择“API管理 > API策略”。
  2. 在“策略管理”页面,单击“创建策略”。
  3. 在“选择策略类型”弹窗中,选择“插件策略 > HTTP响应头管理”。
  4. 在“创建策略”弹窗中,配置策略信息。

    表1 HTTP响应头参数说明

    参数

    说明

    策略名称

    填写策略的名称,根据业务规划自定义。建议您按照一定的命名规则填写策略名称,方便您快速识别和查找。

    策略类型

    固定为“HTTP响应头”。

    描述

    填写策略的描述信息。

    策略内容

    策略的配置内容,支持表单配置和脚本配置两种方式。

    Name

    响应头名称。每个策略中不能添加重复名称的响应头(不区分大小写),且最多添加10条响应头。

    Value_type

    响应头的类型。

    system_parameter:使用系统参数作为响应头的value。

    custom_value:自定义内容作为响应头的value。

    字符串:

    Value

    响应头的值。当“Action”为“Delete”时响应头的值不生效,可为空。

    Action

    响应头操作,您可以覆盖、添加、删除、跳过或新增指定的响应头。

    Override:覆盖

    • 当API响应中存在指定的响应头时,使用当前响应头的值覆盖已有响应头的值。
    • 当API响应中存在多个与指定响应头相同名称的响应头时,该操作只会按当前响应头的值返回一条响应头记录。
    • 当API响应中不存在指定的响应头时,添加当前响应头。

    Append:添加

    • 当API响应中存在指定的响应头时,将当前响应头的值添加到已有响应头值之后,用逗号分隔。
    • 当API响应中存在多个与指定响应头相同名称的响应头时,会将多个响应头的值用“,”拼接后,再添加当前响应头的值。
    • 当API响应中不存在指定的响应头时,添加当前响应头。

    Delete:删除

    • 当API响应中存在指定的响应头时,删除当前响应头。
    • 当API响应中存在多个与指定响应头相同名称的响应头时,删除所有相同名称的响应头。

    Skip:跳过

    • 当API响应中存在指定的响应头时,跳过当前响应头。
    • 当API响应中存在多个与指定响应头相同名称的响应头时,均不作处理直接返回。
    • 当API响应中不存在指定的响应头时,添加当前响应头。

    Add:新增

    无论API响应中是否存在指定的响应头,都添加当前响应头。

  5. 单击“确定”。

    • 如果您需要复制已创建的策略,请在已创建策略的“操作”列中单击“克隆”配置参数即可。

      克隆策略的名称不能与已创建的策略名称重复。

    • 策略创建后,您还需要为策略绑定API,才能使策略对API生效。

脚本配置示例

{
    "response_headers": [
        {
            "name": "test",
            "value": "test",
            "action": "append"
        },
        {
            "name": "test1",
            "value": "test1",
            "action": "override"
        }
    ]
}

为策略绑定API

  1. 单击策略名称,进入策略详情。
  2. 在API列表区域选择环境后,单击“绑定API”。
  3. 筛选API分组以及发布环境,勾选所需的API。

    支持通过API名称或标签筛选API,标签为创建API时定义的标签。

  4. 单击“确定”,绑定完成。

    • 如果单个API不需要绑定此策略,单击API所在行的“解绑”。
    • 如果批量API不需要绑定此策略,则勾选待解绑的API,单击列表上方“解绑”。最多同时解绑1000个API。

相关文档