API管理

API管理是管理所有上游提供的API生命周期功能,提供按业务域分类管理、添加API、导入API、单个或批量API从不同集群上下线等功能。

API管理列表页如下图所示:

添加业务域分组如下图所示:

功能展示

新建API

新建API如下图所示:

部分字段说明:

字段名称字段描述
所属分组可根据上游或业务域进行分组
API名称可输入中英文名称
请求路径API的URI,用于应用请求URL中的相对路径
绑定上游服务可选值是上游服务列表,请求转发到上游,API所属上游服务
请求方式支持常见HTTP请求方式GET、POST、PUT、DELETE等,支持多选
转发上游路径上游服务提供对应的API相对路径,默认转发上游路径继承请求路径
请求超时时间定义网关转发请求到上游至响应的单次消耗时间
重试次数当转发请求到上游失败时,网关会自动触发重试转发请求,最大次数不超过重试次数
websocket默认关闭,该API是HTTP类型的,当打开时,协议为websocket类型
绑定插件模板选择插件模板
高级匹配支持通过请求头,请求参数、Cookie 进行路由匹配,可添加多条,应用于灰度发布
转发上游请求头可对转发上游请求头进行新建、编辑以及删除参数,主要应用于网关与上游间鉴权

系统会根据请求方式和请求路径校验API是否是重复的。

当请求流量进入网关时,网关支持请求路径、请求方式、高级匹配动态路由。

批量上线

批量上线API流程图:

选中将要上线的APIs如下图所示:

点击表头上面的上线操作按钮,弹出选择集群如下图所示:

操作下一步,进入检测结果页。

检测上游是否上线到指定集群结果如下图所示:

弹出框里的表中标红的数据指的是要上线的API所绑定的zzytest上游没有上线到test_apinto集群,可直接点击操作栏中的‘解决方案’跳转到该上游上线的页面,操作上线即可,然后重新检测。

  • 重新检测:当某个上游检测结果失败,可以在操作栏点击快速解决按钮上线上游,如此可以操作重新检测,刷新检测结果。

  • 上一步:返回上一个页面,即返回到选择集群页面。

  • 批量上线:当列表数据的状态都是成功状态时,此按钮才可点击,否则灰显。点击批量上线,进入API上线结果如下图所示:

批量下线

僵尸API或即将要砍掉业务的API,都可以通过批量下线API进行解决,不占系统资源。

批量下线API流程图:

选择集群如下图所示:

点击提交,进入APIs下线结果页如下图所示:

导入

API管理列表表头上点击‘导入’,弹出导入框如下图所示:

暂时支持swagger3.0的json、yaml格式文件导入。

  • API分组:将要导入的APIs归属到哪个分组

  • 绑定上游服务:将要导入的APIs必须由同一个后端业务系统或微服务提供,需先创建好上游服务,新建上游可参考3.2.1章节

  • 请求前缀:统一给所有API添加前缀,如导入其中的一个API的URI为/user,为了保障路径的隐蔽与安全性,可添加请求前缀,如输入/web/app,那么这个API的请求URI为/web/app/user

API详情

点击列表操作栏中的查看或点击列表中的数据,进入API详情,API详情-API信息如下图所示:

除了API的描述字段,编辑API其余字段信息,提交后系统会更改在各个集群网关的状态,需要重新上线才会生效更改的属性。

上线管理

在API列表中,可对单个API进行上下线管理,上线管理如下图所示:

上线管理的列表显示该API在所有集群的状态和禁用状态,可对该API所在每个集群进行上线、下线、禁用以及启用操作。

API在集群的初始状态为未上线,禁用状态为未禁用,上线操作后变为已上线,该API才能被应用调用。

当状态为已上线或待更新时,对禁用状态修改,都会更改控制台API所在集群状态为待更新,需要更新到网关才会生效。

禁用状态中的已禁用表示该API在集群不生效,网关不会转发该API请求。