1.功能描述
JPAAS平台对外提供接口进行访问,在平台中,我们可以通过对API进行管理,管理员可以对接口进行参数,请求头进行管理。
2. 操作步骤
2.1 添加接口定义
系统管理->API网关->接口开放管理->新建
- 需要选择服务
- 可以点击即可名称的按钮进行选择。
- 除了选择之外还可以直接进行手工录入,我们根据实际的情况输入即可。
需要注意的是如果接口的参数为 请求体对象 @RequestBody
需要将参数写到请求体的框中。
这些接口的管理,只有请求路径和请求方法是必须的。其他的参数都一些描述型的信息,方便后续用户使用,知道接口如何使用。
2.2 生成接口
表单数据保存,修改这些接口之前是用的统一接口,这样带来的问题是,粒度太大,现在可以控制到一个表单对应几个接口。
支持生成接口的有如下几个:
2.2.1 表单方案
单据中心->单据视图->表单方案
选择一个表单方案,点击下拉菜单,点击“生成外部接口”,生成后在
接口开放管理->API网关->接口开放管理->API接口开放管理查询到。
以保存表单数据为例接口详细情况为:
2.2.2 生成自定义查询
我们生成自定义查询后,我们可以对每一个自定义查询发布一个接口,可以对这些接口进行单独授权访问。
单据中心->数据交互->查询定义
点击生成对外接口。
自定义查询有两个参数
参数 | 说明 |
---|---|
params | 这个为查询条件键值对,示例 {ID_:’1545236115139215362’} |
deploy | 可以不填。 这个参数只在 SQL构建类型 为 基于表或视图有用 ,参数格式为 {textfield:””,valuefield:””,fatherNode:””} ,分别 textfield:显示字段,valuefield:值字段, fatherNode:父ID字段 |
2.2.3 生成自定义脚本接口
我们可以对某个脚本生成对外的接口并进行授权访问。
单据中心->数据交互->Groovy脚本
接口定义
2.3 接口使用
2.3.1 接口授权
在客户端访问接口的时候,我们需要给终端进行接口授权。
2.3.2 获取token
中端需要访问接口的时候,需要先根据终端的id和密钥获取token。
2.3.3 调用接口
我们使用启动流程为例调用接口。
- 接口地址
http://localhost/api/api-bpm/restApi/bpm/startProcess
- 请求方法
请求方法为POST
- 请求头
- token 前面接口获取的TOKEN
- account 发起人账号
- Content-Type :application/json
- 请求体
{"defId":"1551479465261588482","formJson":"{\"mycustomer\":{\"address\":\"CC\",\"customno\":\"BB\",\"phone\":\"DD\",\"name\":\"AA\"}}","checkType":"AGREE"}
- 接口返回数据
{
"success": true,
"message": "成功启动流程!",
"detailMsg": "",
"show": true,
"code": 200,
"data": {
"createTime": "2022-07-26 23:40:30",
"updateTime": "2022-07-26 23:40:30",
"createBy": "1",
"updateBy": null,
"createDepId": null,
"tenantId": "1",
"companyId": "0",
"instId": "1551955626051698690",
"defId": "1551479465261588482",
"treeId": "1424977788870897666",
"formSolutionAlias": null,
"actInstId": "1551955626374660098",
"actDefId": "parallel:2:1551479465517441025",
"defCode": "parallel",
"instNo": null,
"billNo": "1551955626240462849",
"billType": "客户",
"subject": "[测试]并行测试-由管理员创建于2022-07-26 23:40:29",
"status": "RUNNING",
"version": 2,
"busKey": "1551955626240462849",
"checkFileId": null,
"isTest": "YES",
"errors": null,
"endTime": null,
"dataSaveMode": null,
"supportMobile": null,
"startDepId": null,
"startDepFull": null,
"isLive": "NO",
"liveInstId": null,
"lockedBy": null,
"fieldJson": null,
"applicantName": null,
"applicantNo": null,
"pkId": "1551955626051698690"
}
}
文档更新时间: 2022-09-08 09:19 作者:zyg