概述
在微服务架构中,API 是系统集成与对外服务的关键接口。云原生 API 网关通过提供标准 REST API,支持从API设计到发布再到下线的全流程管理,使开发、测试、运维等各角色都能以统一方式高效管理接口。
前提条件
已创建云原生API网关实例,具体操作,请参见创建网关实例。
API生命周期管理
REST API支持通过控制台或者基于OpenAPI导入的方式创建。
步骤一:创建API
基于控制台创建REST API
登录云原生API网关控制台。先在顶部菜单栏选择 "地域" ,然后在左侧导航栏选择 "API"。
单击 "创建API" 。
单击 "REST API" 卡片中的 "创建" ,在 "新增API(REST)" 弹出框中配置相关参数,单击 "确定" 。
| 配置项 | 说明 |
|---|---|
| API名称 | 自定义创建的API名称 注意 API名称需要保证唯一。 |
| API协议 | API允许接受的HTTP协议 |
| Base Path | API的基本路径,访问具体接口时,完整路径为 http(s)://{域名}/{BasePath}/{接口Path} |
| 版本管理 | 是否启用API版本管理能力,不同版本的API拥有相同的API名称,但参数定义、接口配置可以不同,编辑当前API版本的参数定义、接口配置和策略,不会影响其他版本。不同版本的API可以视为独立的API,访问时需要指定版本标识符 开启版本管理功能后,需要配置使用方式 |
| 使用方式 | 支持Path、Query、Header三种方式
|
| 描述 | 填写API的相关描述 |
通过导入OpenAPI文件创建REST API
首先按照上文中通过控制台创建REST API步骤创建一个REST API。
单击刚才新建成功的 "API名称" ,进入 API详情页面,单击右上角的 "更多操作" ,单击 "导入"。
在弹出框中单击 "从文件导入",选择待导入的OpenAPI文件,然后单击 "预检并创建"。
选择 "合并逻辑",各选项说明如下:
选项 说明 智能合并 将在已存在的API基础之上,创建新增的接口,更新重复的接口,但不删除仅在原API中存在的接口 仅导入新增接口 将在已存在的API基础之上,仅创建新增的接口,对重复或原有的接口不做处理 覆盖当前API 基于当前导入的文件重新创建API,完全覆盖已有API 如果预检结果为失败,需要您修改配置文件并重复上述步骤。如果预检结果为成功,可以单击 "创建API" 根据选择的合并逻辑进行API导入 。
步骤二:添加接口
在REST API中,单击 "添加接口" 。
在 "创建接口" 弹出框中配置相关参数,单击 "保存" 。
配置项 说明 接口名称 自定义创建的接口名称,在API下需要唯一 接口Path 接口的具体路径 方法 接口的请求方法。接口的路径+接口的方法,需要在API下唯一 描述 接口的描述信息 请求定义 支持定义 "Header" 、"Query"、"Parameter Path" 参数以及 "Body" 参数
其中Path参数支持在接口Path中按照如下方式进行变量定义:
- /books/:bookId
说明
请求定义仅用于文档展示和生成,不对运行时进行校验。
响应定义 定义不同响应码的数据结构
说明
响应码定义仅用于生成文档,不对运行时进行校验。
Mock Mock配置仅在API发布Mock场景下生效
步骤三:发布 API
录云原生API网关控制台。顶部菜单栏选择 "地域",然后再左侧导航栏选择 "API"。
单击目标API。单击右上方的 "发布API" 。
在发布API弹出框中配置相关参数,然后单击 "发布" 。
配置项 说明 域名 选择域名进行发布,发布后,可以通过域名访问API 所属实例 选择所创建的云原生API网关实例。不同的业务环境可用不同的实例区分,实现API在多环境上的发布 使用场景 使用场景包括基础场景和灰度场景两类
基础场景
Mock:接口响应将返回接口定义中的Mock配置,若接口未定义Mock配置,则将无法访问该接口
说明
发布Mock场景时,要求当前API中至少有一个接口开启了Mock配置,否则将发布失败。
- 单服务:所有流量请求将转发到某一具体的后端服务,这个场景为最常使用的场景
灰度场景
按比例(多服务):流量将按比例分发到对应的后端服务中,常用于切流及灰度发布场景
说明
要求服务权重之和等于100。
后端服务 关联该网关实例下的后端服务 发布描述 填写API的发布描述
步骤四:调试 API
登录云原生API网关控制台。顶部菜单栏选择 "地域",然后再左侧导航栏选择 "API"。
单击目标API。
在 "API设计" 标签页的 "接口列表"栏,选择需要调试的接口,单击右侧的 "调试"。
在 "接口调试" 弹出框中,配置相关参数,然后单击 "发送请求" 进行调试。
步骤五:添加 API 版本
操作步骤
登录云原生API网关控制台。顶部菜单栏选择 "地域",然后再左侧导航栏选择 "API"。
单击目标API,单击右上角的 "更多操作" > "添加版本" ,完成相关配置:
配置项 说明 使用方式 支持Path、Query、Header三种方式
- 使用Path时,需要完整访问路径为:
/{域名}/{BasePath}/版本号/接口路径 - 使用Query时,完整访问路径为:
/{域名}/{BasePath}/接口路径,请求参数中需要配置参数项添加Query为版本号 - 使用Header时,完整访问路径为:
/{域名}/{BasePath}/接口路径,请求头中需要配置参数项添加Header为版本号
- 使用Path时,需要完整访问路径为:
在添加完成后,您可以单击页面上方的 "版本" 下拉框选择版本切换。
步骤六:导出 API
登录云原生API网关控制台。顶部菜单栏选择 "地域",然后再左侧导航栏选择 "API"。
单击目标API。单击右上角的 "更多操作" > "导出" 。
查看发布历史
说明
发布历史保留最近10次。
登录云原生API网关控制台。顶部菜单栏选择 "地域",然后再左侧导航栏选择 "API"。
单击目标API,然后单击 "发布历史" 标签页。
单击 "版本" 和 "实例下拉框" 可以选择不同API版本和实例下的发布历史。
单击目标历史版本 "操作" 列下的 "查看" ,可查看历史版本详情。
单击目标历史版本 "操作" 列下的 "切换至该版本" ,可将当前API的在当前实例上的已发布版本切换到选定版本。
步骤七:下线 API
登录云原生API网关控制台。顶部菜单栏选择 "地域",然后再左侧导航栏选择 "API"。
单击目标API。单击右上角的 "更多操作" > "下线" 。
步骤八:删除 API
登录云原生API网关控制台。顶部菜单栏选择 "地域",然后再左侧导航栏选择 "API"。
单击目标API。单击右上角的 "更多操作" > "删除" 。