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请求。