历史版本9 :使用数据服务发布的API(POST x-www-form-urlencoded请求) 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

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

若需要自定义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」

前缀
绑定的应用IDAPIPath
例如 http://192.168.5.175:8089/webroot/service/publish/

配置发布环境中的应用ID

例如80a0d8d0-98fa-4818-b25b-00d77c76e6c5


自定义路径名称 例如demo1

请求方式

POST

ContentType

x-www-form-urlencoded

POST 请求body参数:

名称类型是否必填描述
pagingpageNumint

分页参数

pageNum 为页数,数值可自定义。

pageSizeint

pageSize 为每页数据条数,数值可自定义

注:每页数据条数单次调用最大限制为10000。

paramsobject

自定义参数

如果在发布API时设置了自定义参数,但是请求中未传此参数,则返回报错。

请求示例:

注:此处的 area 为 发布API  中设置的自定义参数。

返回值参数:

名称类型描述
dataobject返回用户使用接口取出的数据

totalCount

int返回取出数据的总数据条数
pageSizeint返回取出数据的每页数据条数
pageNumint数据页数,即从第几页开始取

rowCount

int

当前页数包含的数据条数

与 pageNum 页数有关。比如一共12条数据,传入的pageNum是2,pageSize是10。实际会查询第二页的数据,实际返回2

messagestring

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. 接口响应码说明编辑

调用返回值说明详情参见:接口响应码说明