配置 API

注册 API 服务后,您需要进行相关配置才能使用 API 服务,尤其是 HTTP 类型的 API 服务。只有 API 服务状态为 开通 才能被调用。您需要手动开通 HTTP 类型的 API。

关于此任务

API 包括以下类型的参数配置:

  • 基础信息:API 名称、接口描述、接入系统等,不同类型的 API 服务还具备不同的属性。

  • 高级配置:签名校验、ETag 缓存、超时时间。

  • header 设置:网关支持为所有请求添加或者删除 header。

  • 限流配置:对 API 调用进行限流配置。

  • 缓存配置:缓存 API 的响应,减轻业务系统压力。

  • 参数设置:请求参数设置、响应设置等,此项配置为 HTTP 类型的 API 服务特有。

欲了解详细的参数介绍及配置规则,单击以上配置类型名称。

操作步骤

要配置 API,完成以下步骤:

  1. 登录 mPaaS 控制台,在左侧导航栏,单击 移动网关

  2. 在 API 列表中,选择要配置的 API 名称,单击操作列中的 配置,进入 API 详情页面。

  3. 切换详情页右上角的 API 开关,以开通或关闭当前 API。

  4. 在以下 API 不同的配置区域,单击 修改 进行相应参数的编辑。具体的配置方法,参见下方的配置信息。

  5. 单击 保存 完成配置。

配置信息

基础信息

根据不同类型的 API 服务,编辑相应的参数值:

  • HTTP API

    • API 名称:必填,该 API 的接口名称,方便后续维护。

    • 接口描述:选填,更详细的 API 描述。

    • 接入系统:必填,API 所属的业务系统。

    • 请求 Path:必填,URL Path,可使用 ${} 包含 path 参数,比如:/pets/${id}

    • 请求方式:必填,支持 GET、POST、PUT、DELETE 和 HEAD。

    • 报文编码:必填,UTF-8 或 GBK 格式。

  • MPC API

    • API 名称:必填,该 API 的接口名称,方便后续维护。

    • 接口描述:选填,更详细的 API 描述。

    • 接入系统:API 所属的业务系统。

    • 接口方法:API 服务端方法。

    • 接口名称:API 服务端接口。

高级配置

  • 签名校验:选择是否开启签名校验。若开启,将对客户端请求的签名进行校验。

  • 超时时间:设置服务超时时间,单位毫秒(ms)。超时优先级:接口超时设置 > 系统超时设置 > 默认 3000 ms。

  • 开放 JSONP:设置是否支持跨域 HTTP 请求。JSONP 允许快速跨域使用 API。

header 设置

网关支持为所有请求添加或者删除 header。在 header 设置 区域,单击 修改 打开编辑模式后,即可通过单击 Add 可以添加一条规则。每条规则包含 位置类型headerKeyvalue操作 五个属性。

  • 位置:可选 request header 或 response header。

    • 添加 request header 会自动在 request 中增加 header,业务可以通过 MobileRpcHolder 获取该 header。

    • 添加 response header 会自动在 response 中增加 header,客户端可以从 response 中获取该 header。

  • 类型:可选增加(add)或删除(delete)。

    • 增加(add):添加一个新的 header,如果原请求已有 header,则会被新增的 header 覆盖。

    • 删除(delete):删除一个 header。删除 header 可以配置 value 也可以不配置。如果配置 value,那么只有在 value 匹配时才会删除。

  • headerKey:headerKey 可以为符合 RFC 定义的任意字符串,除 HTTP 协议中的特有 header 之外,比如 host、content-Type 等;也不可以是 mpaasgw 中特有 header,比如 operation-Type 等。

  • value:可以为任意字符串。

  • 操作:删除当前 header 规则。

    说明

    定义 HTTP header 时,请不要使用下划线“_”。

限流配置

限流配置包括限流模式、限流值、限流响应:

  • 限流模式

    • 关闭:不限制 API 调用。

    • 拦截:当调用频次超过限流值,拦截请求。

  • 限流值 根据业务需求设置合理的限流阈值(单位:秒)。限流模式为拦截且超过此值时,请求会被限流。

  • 限流响应 限流默认的响应为:{"resultStatus":1002,"tips":"顾客太多,客官请稍候"} 如需定制限流响应,使用如下格式:

      {
          "result": "==此处为定制响应内容,请填写==",
          "tips": "ok",
          "resultStatus": 1000
      }

    其中:

    • result 为定制的响应数据,JSON 格式。只有 resultStatus 为 1000 时,客户端才会取此字段处理。

    • tips 为定制的限流提示。若 resultStatus 为 1002,会取此字段提示用户。

    • resultStatus 为限流返回的结果码,具体含义请参见 网关结果码说明

缓存配置

缓存 API 的响应,减轻业务系统压力。具体配置参见 API 缓存

参数设置

参数设置适用于 HTTP 类型的 API 服务。通过自动导入方式创建的 API 无需配置参数。

  • 请求参数:设置 Path 中的动态参数和 URL Query 参数,参数名称保证唯一。

    • 参数名称:必填,参数的名称。

      说明

      如果为 Path 参数,请保证名称与请求 Path 中的一致。例如,请求 Path 为 /pets/${id},此时参数名称应为 id

    • 参数位置:必填,参数位于 Path 或者 Query String 中。

    • 类型:必填,可选择的类型有 String、Int、Long、Float、Double、Boolean。

    • 默认值:选填,参数的默认值。

    • 描述:选填,参数描述。

  • 请求 Body:指定请求 Body 的数据模型及 Content-Type。

    说明

    仅当 API 的调用方式为 POST 时,才会展示请求 Body 配置。

    • 请求 Body 类型:支持的 Body 类型有 String、Int、Long、Float、Double、Boolean、List、Map、Object。

    • 报文类型:支持的报文类型有 application/json、application/x-www-form-urlencoded、application/protobuf。

  • 响应结果:指定响应结果的类型。

    • 响应结果类型:指基础类型或者自定义的数据模型。

阿里云首页 移动开发平台 mPaaS 相关技术圈