配置API
原生服务旨在帮助您在AppCube平台上或者外部系统调用您开发好的服务,为了完成调用,需要知道您的服务开放了哪些接口,以及这些接口的请求参数、返回参数,完成设计API之后,您可在Flow中进行调用,也可将API再封装为自定义公共接口,供外部系统调用自定义公共接口。
前提条件
需要提前获取镜像文件中定义的具体接口、接口的Header参数、请求参数和返回参数。获取后,您可根据需要决定开放哪些接口给其他Flow或者外部系统调用。
操作步骤
- 登录AppCube开发环境,在首页“我的应用”下单击上一节创建的Native Service,进入NativeService配置页面。如果您还没有创建NativeService,请参照创建Native Service进行创建。
- 在NativeService配置页面选择“导航”。
- 选择“API设计”页签,单击“开始设计API”。
- 选择“使用模板”,配置基本信息,配置新URL对应的版本号,单击“创建”。
也可以选择“导入模板”,但是导入的模板数据需要遵循正确的模板规则。
表1 参数说明 参数
说明
openApi版本
接口定义需要符合openApi规范,这里配置具体openApi的版本号。
选择模板
选择系统预置的模板。
版本
服务版本号。
标题
Native Service API的名称。
- 单击“新增资源”。
- 在“增加资源及操作方法”页面上进行参数配置,单击“确认”。图1 增加资源及操作方法配置页面
表2 参数说明 参数名
说明
输入一个新的资源路径(以/开头)
与镜像文件中的接口路径保持一致。
方法
调用的方法,如GET(查询)、PUT(增加)、POST(修改)、DELETE(删除)、PATCH(对资源进行部分修改)。
操作名称
与镜像文件中的操作名称保持一致。
公共接口
若勾选,则只能在公共接口中调用,无法在服务编排和脚本中使用。
内容类型
当勾选“公共接口”时,您需要配置内容类型,即请求中的body类型。
- application/json
- application/x-www-form-urlencoded
- application/xml
- multipart/form-data
- text/html
- text/plain
“application/x-www-form-urlencoded”、“application/xml”、“multipart/form-data”、“text/html”和“text/plain”用于文件上传接口,选择该内容类型,只能调用post类型的方法。
描述
描述信息。
长度不超过255个字节。
- 点击生成的方法,可以在右侧编辑方法的URL、Header、Response参数,需要和镜像文件中接口的URL参数、Header参数、请求参数、返回参数保持一致。编辑参数后,需要单击参数操作列的
,再单击“保存”。
您可参考界面上“/case”、“/case/{CaseId}”两个示例编辑生成的方法。每个方法都需要定义Response参数,否则会部署失败。返回体数据结构在模式对象中定义。
当Body参数和Response参数较多,一些参数可以封装成对象类型的参数,并在“模式对象”页签设置该类型参数,注意“模式对象”页签中参数名与操作中URL参数不能同名。
支持按照操作名称和资源路径单过滤或者组合过滤搜索方法。
图2 编辑方法图3 定义模式对象 - 参考5~7,新增其他API方法。
- 编辑方法完成后,需要手动删除“/case”、“/case/{CaseId}”两个示例,删除示例模式对象。
- 单击“保存”,创建的自定义接口会出现在页面上。在页面右上单击
可以查看自定义接口中的方法和模型对象,在页面右上单击
可导出该原生服务下接口定义yaml文件。
- 单击
,发布API。
发布后如果需要修改API,需要单击
取消发布后进行修改,修改后再保存并发布。
已经发布的API可能在服务编排中已经使用,如果修改API导致不兼容,请同步修改引用该API的服务编排。
管理台中查看API
发布API后,您可在管理台查看该原生服务提供的方法和模型对象。
- 在AppCube首页单击“管理”,进入管理页面。
- 选择“服务中心 > 服务管理”,在“我的服务”页签下可以看到该租户下部署的所有原生微服务。
- 单击需要查看的原生微服务,选择“服务接口”菜单,您可在该菜单下查看该原生服务提供的方法和模型对象。
