API 管理

API列表页提供已有API数据的展示,支持我的API、全部API、我的收藏等维度的筛选。提供归属应用、发布状态的过滤条件。并支持创建、删除、下线、批量操作等。

入口:网络服务 -> API 网关 -> API 管理

API列表

一、创建API

API创建过程分为三个步骤:基本信息,配置请求,配置后端服务

创建入口:API管理 -> 新建APIAPI创建

1.1 填写基础信息

按照控制台输入提示,填写基础信息中的属性值。点击 【下一步】归属应用可以在API新建流程中创建,也可以直接在【应用管理】中进行管理。API名称 + API版本 唯一确定一个API提示:名词的定义,可参考名词解释

1.2 配置请求

配置请求中包含请求信息和请求入参两部分。

请求信息:

  • HTTPMethod:允许使用的请求方法,GET、POST,默认两种都允许。
  • 请求入参支持通过模板方式导入,也支持直接添加

请求入参说明:

   
  1. 参数类型:Number,String,Boolean
  2. 参数传递:必填 和 非必填 两种。对于必填参数使用,请求传参>缺省值,当两种都没有时,网关参数校验后报错返回。
  3. 缺省值:当请求时不带入参时,网关默认使用该参数。
  4. 参数排序:拖动可排序,调整相关的参数在一起,方便查看,入参顺序不做校验。

配置请求

1.3 服务后端配置

服务支持Dubbo和HTTP两种类型,可通过服务类型选择切换。

Dubbo类型

采用Dubbo协议来调用后端服务。API中Dubbo服务的配置必须跟后端运行的Dubbo服务配置保持一致,用于网关向后端调用服务时服务发现和路由。需要配置以下属性(红*为必填项):

   
  1. 服务名(必填):
  2. 服务方法(必填):
  3. 服务分组(非必填):
  4. 版本(非必填):

dubbo

HTTP类型

采用HTTP协议来调用后端服务,需要配置以下属性(红*为必填项):

   
  1. IP: 服务部署的机器IP地址, 在应用中配置
  2. 请求路径:HTTP Path
  3. methodType: 后端服务允许的访问方法,默认使用GET&POST。

后端服务

参数映射

参数映射是指将API请求中的业务入参和协议内置参数传递到后端服务。业务入参在API配置请求中定义,协议内置参数通过SDK自动携带上来。

参数顺序

Dubbo服务通过方法调用,对参数顺序、类型和个数有严格要求。参数顺序决定后端调用方法时的传参顺序,配置参数时请保持一致。HTTP服务对参数顺序不做要求。

参数类型

参数类型包含基础类型和封装类型,当前内置以下几种:

   
  1. int
  2. long
  3. float
  4. double
  5. boolean
  6. java.lang.Long
  7. java.lang.Float
  8. java.lang.Double
  9. java.lang.Boolean
  10. java.lang.Integer
  11. java.lang.String

其他类型需要手动输入类全路径(基本类型除外)

1.4 更多信息

除了在创建API时填写的基本信息外,系统额外提供了高阶配置用于业务的自定义

   
  1. 允许接入端:AndroidiOSH5
  2. 响应错误码
  3. 响应内容

更多信息

二、API测试

API测试指直接在控制台模拟接入端,向网关发起API请求,并查看响应结果。常用于开发阶段调试后端服务,也可以通过模拟请求排查线上问题。

测试支持Native测试和H5测试两种类型:

  • Native测试:模拟iOS,Android端发送请求。
  • H5测试:模拟H5发送请求(控制台集成了API 网关 JS SDK)。

入口:MNaaS -> API 网关 -> API 管理 -> API 详情 -> 测试TAB只有【已发布】的API支持测试,如下图所示,

image.png | left | 827x469

Native测试

切换到【Native测试】TAB, 如上图。

操作步骤:

  • 选择一个AppKey,模拟客户端APP
  • 设置其它请求参数(可选,根据实际业务需要)
  • 点击【开始测试】
  • 执行测试后,右侧可查看【测试结果】

Native测试支持以下请求参数设置:

  • 请求业务参数:新建API时定义的请求入参,业务参数,可模拟请求输入相关参数的值,
  • API测试设置:请求方法(GET,POST),AppKey选择
  • 请求协议参数:网关协议内置参数,支持ttid,utdid,location设置
  • 请求Header设置:标准HTTP协议Header头设置

H5测试

操作步骤:

  • 选择一个AppKey,模拟客户端APP
  • 设置其它请求参数(可选,根据实际业务需要)
  • 点击【开始测试】
  • 执行测试后,右侧可查看【测试结果】

H5测试支持以下请求参数设置:

  • 请求业务参数:新建API时定义的请求入参,业务参数,可模拟请求输入相关参数的值,
  • API测试设置:请求方法(GET,POST),AppKey选择
  • 请求Header设置:标准HTTP协议Header头,也可以自定义Header头

image.png | left | 827x470

测试结果

完整API测试结果包含请求URL,请求Header,响应码,响应Header,响应Body五部分。

三、API Mock

Mock功能用于在后台服务没有的ready的情况下,前端可以正常完成API调用逻辑

Mock

效果:打开开关后前端的请求不会进入服务器端,直接返回已经配置的数据,retCode、retMsg通过header返回给请求方,返回值通过body返回给请求方。

四、发布

当API的配置信息有修改需要生效时,通过发布操作将API信息动态更新到网关服务里生效

发布前需要明确:

  • 清楚当前修改的内容
  • 明确修改的原因确认无误后即可进行发布操作

    发布

五、收藏

API支持收藏,方便将重点关注的API归档查看。

操作:

  • API管理 点击 API前面的ICON星,即可收藏。

已收藏API可前往 API管理 -> 收藏 中查看,如下图:

六、克隆

API克隆可以帮助快速创建一个较相似的API。通过克隆新建API流程跟新建API一致。

API详情页,点击右上角【克隆】,出现克隆滑层。编辑API名称和版本,其它属性可以根业务实际需要更新。

七、删除

只有未发布的API可以删除,删除后API控制台不可见。

注意:删除操作不可逆,请谨慎操作。

八、批量操作

在同一个应用下,选中多个API时可以进行批量发布、批量下线、批量导出操作

九、导入

多个不同环境独立部署API网关时,在日常环境通过批量导出API配置生成的文件,导入到生产环境