1. 概述
1.1 版本
FineDataLink版本 | 功能变动 |
---|---|
4.0.20.1 | - |
4.0.26 | 非超级管理员支持使用数据服务 |
4.0.27 | 支持使用 FineBI 公共数据作为数据来源 |
4.0.28 | 数据发布API 支持设置 SQL防注入,以便使用 IN 语法实现多值查询 数据发布API参数支持传入NULL值 数据发布API参数支持配置必填 / 非必填 数据发布API支持GET请求方式 数据发布API的POST请求方式,额外支持x-www-form-urlencoded格式 |
4.1 | 接口调用返回码优化 |
1.2 应用场景
本文介绍如何将 FineDataLink 数据服务发布API 中请求方式为 POST(x-www-form-urlencoded)类型的接口数据取出。
注:若用户需要使用自己系统中的 API 进行取数,可参见:API取数概述
2. 接口文档
已经发布的 API 接口说明如下:
请求说明:
请求域名 | 发布API中使用的 FineDataLink 服务器地址 例如:http://192.168.5.175:8089/webroot | ||||||
---|---|---|---|---|---|---|---|
请求地址 | 发布API中设置的API路径 例如:http://192.168.5.175:8089/webroot/service/publish/80a0d8d0-98fa-4818-b25b-00d77c76e6c5/demo1 注:可直接在发布界面复制API请求地址。 API访问路径「请求域名」+「应用ID」+「APIPath」
| ||||||
请求方式 | POST | ||||||
ContentType | x-www-form-urlencoded |
POST 请求body参数:
名称 | 类型 | 是否必填 | 描述 | |
---|---|---|---|---|
paging | pageNum | int | 是 | 分页参数 pageNum 为页数,数值可自定义。 |
pageSize | int | 是 | pageSize 为每页数据条数,数值可自定义 注:每页数据条数最大限制为10000。 | |
params | object | 否 | 自定义参数 如果在发布API时设置了自定义参数,但是请求中未传此参数,则返回报错。 |
请求示例:
注:此处的 area 为 发布API 中设置的自定义参数。
返回值参数:
名称 | 类型 | 描述 |
---|---|---|
data | object | 返回用户使用接口取出的数据 |
totalCount | int | 返回取出数据的总数据条数 |
pageSize | int | 返回取出数据的每页数据条数 |
pageNum | int | 数据页数,即从第几页开始取 |
rowCount | int | 当前页数包含的数据条数 与 pageNum 页数有关。比如一共12条数据,传入的pageNum是2,pageSize是10。实际会查询第二页的数据,实际返回2 |
message | string | success,则返回成功 失败时具体原因会在Messege中体现 |
响应值示例:
{
"data": [
{
"运货商": null,
"货主地区": "华中",
"货主邮政编码": "214000",
"应付金额": null,
"雇员ID": "214001",
"备注": null,
"到货日期": "2023-02-22",
"货主名称": "林小姐",
"订购日期": "2023-02-27",
"货主城市": null,
"货主国家": "中国",
"订单ID": "214001",
"货主地址": null
}
],
"pageSize": 10,
"rowCount": 10,
"message": "success",
"totalCount": 85,
"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/demo1,如下图所示:
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 中选择「x-www-form-urlencoded」,输入键值数据,如下图所示:
示例取出「为NULL」的数据,因此自定义参数 area 的 value 直接写成 NULL,将 pageSize 设置为 20,也就是每页数据限制为 20 条,从第一个开始取数,查看返回值中,每页 20 条数据计算总页数为多少。
点击 send 后返回值如下图所示:
4. 接口响应码说明
调用返回值说明详情参见:接口响应码说明