1. 概述
1.1 版本
FineDataLink版本 | 功能变动 |
---|---|
4.0.20.1 | - |
4.0.28 | 数据发布API的POST请求方式,额外支持x-www-form-urlencoded格式 |
4.1 | 接口调用返回码优化;返回参数 totalCount 更新为 totalNum |
1.2 应用场景
本文介绍如何将 FineDataLink 数据服务 发布的API 中请求方式为 POST(application/json)类型的接口数据取出。
注:若用户需要使用自己系统中的 API 进行取数,可参见:API取数概述
2. 接口文档
已经发布的 API 接口说明如下:
请求说明:
请求域名 | 发布API中使用的 FineDataLink 服务器地址 例如:http://192.168.5.175:8089/webroot 若需要自定义Web容器访问路径,可联系技术支持获取方案,技术支持联系方式:前往「服务」,选择「在线支持」、电话「400-811-8890」。 | ||||||
---|---|---|---|---|---|---|---|
请求地址 | 发布API中设置的API路径 例如:http://192.168.5.175:8089/webroot/service/publish/80a0d8d0-98fa-4818-b25b-00d77c76e6c5/demo1 注:可直接在发布界面复制API请求地址。 API访问路径「请求域名」+「应用ID」+「APIPath」
| ||||||
请求方式 | POST | ||||||
ContentType | application/json |
POST 请求body参数:
名称 | 类型 | 是否必填 | 描述 | |
---|---|---|---|---|
paging | pageNum | int | 是 | 分页参数 pageNum 为页数,数值可自定义。 |
pageSize | int | 是 | pageSize 为每页数据条数,数值可自定义 注:每页数据条数单次调用最大限制为10000。 | |
params | object | 否 | 自定义参数 如果在发布API时设置了自定义参数,但是请求中未传此参数,则返回报错。 |
请求示例:
{
"paging": {
"pageNum": 1,
"pageSize": 10
},
"params": [{
"name": "dtime",
"value": "2010-07-13 00:00:00"
}]
}
注:此处的 name 为 发布的API 中设置的自定义 dtime 参数。
返回值参数:
名称 | 类型 | 描述 |
---|---|---|
data | object | 返回用户使用接口取出的数据 |
totalNum | int | 返回取出数据的总数据条数 |
pageSize | int | 返回取出数据的每页数据条数 |
pageNum | int | 数据页数,即从第几页开始取 |
rowCount | int | 当前页数包含的数据条数 与 pageNum 页数有关。比如一共12条数据,传入的pageNum是2,pageSize是10。实际会查询第二页的数据,实际返回2 |
message | string | success,则返回成功 失败时具体原因会在Message中体现;详情请参见本文第四章内容 |
errCode | int | 错误码;详情请参见本文第四章内容 |
响应值示例:
{
"data": [
{
"运货商": null,
"货主地区": "华中",
"货主邮政编码": "214000",
"应付金额": null,
"雇员ID": "214001",
"备注": null,
"到货日期": "2023-02-22",
"货主名称": "林小姐",
"订购日期": "2023-02-27",
"货主城市": null,
"货主国家": "中国",
"订单ID": "214001",
"货主地址": null
}
],
"totalNum": 5,
"errCode": 0,
"pageSize": 10,
"rowCount": 5,
"message": "success",
"pageNum": 1
}
3. 测试接口
3.1 获取API地址
首先在API列表界面选择需要使用的API,然后在已授权应用处复制路径,获取到 API 完整路径地址,例如:http://192.168.5.175:8089/webroot/service/publish/service/publish/80a0d8d0-98fa-4818-b25b-00d77c76e6c5/demo,如下图所示:
3.2 获取 API 鉴权
若用户使用了鉴权,则需要在「应用」中复制 APPCode,如下图所示:
注:如果开启了黑白名单,需要保证使用 API 的环境与发布 API 环境之间信息能互通。
3.3 设置 API 基本信息
使用任意取数软件,选择POST请求方式,输入复制的API链接,选择「Authorization」,勾选认证类型为「API Key」,输入Key:Authorization,value :AppCode f99d314a-41fc-4d5b-865d-966b1cee74c1,选择 Add to 为 Headers,如下图所示:如下图所示:
注1:复制的链接默认为IP:端口/webroot 路径,如果用户的FineDataLink做过Tomcat下通过IP直接访问系统,则需要给复制的url去掉webroot。
注2:参数值格式为:APPCode+空格+APPCode值,此处的 APPCode 为示例。
然后在Body 中选择「raw-JSON」,输入 json 数据,如下图所示:
示例取出「华东和华南」的数据,因此自定义参数货主地区的 value 直接写成华东','华南,将 pageSize 设置为 10,也就是每页数据限制为 10 条,从第一个开始取数,查看返回值中,每页 10 条数据计算总页数为多少。
{
"paging": {
"pageNum": 1,
"pageSize": 10
},
"params": [
{
"name": "货主地区",
"value": "华东','华南"
}
]
}
点击 send 后返回值如下图所示: