使用数据服务发布的API(GET 请求)

  • Last update: October 23, 2023
  • 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 中请求方式为 GET 类型的接口数据取出。

    注:若用户需要使用自己系统中的 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」

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

    配置发布环境中的应用ID

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


    自定义路径名称 例如demo1

    请求方式GET

    GET Query Params请求参数:

    名称类型是否必填描述
    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/demo2,如下图所示:

    3.2 获取 API 鉴权

    若用户使用了鉴权,则需要在「应用」中复制 APPCode,如下图所示:

    注:如果开启了黑白名单,需要保证使用 API 的环境与发布 API 环境之间信息能互通。

    3.3 设置 API 基本信息

    使用任意取数软件,选择GET请求方式,输入复制的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 为示例。

    然后选择 Params ,输入参数,如下图所示:

    示例为当无参数时,取出全部的数据,因此自定义参数 area 直接不写,将 pageSize 设置为 300,也就是每页数据限制为 300 条,从第一个开始取数,一次取出全部数据。

    点击 send 后返回值如下图所示:

    4. 接口响应码说明

    用户在使用API发布的数据时,可以根据 Messege 字段判断 API 响应成功与否。

    Messege 为 success,则返回成功,如下图所示:

    否则当返回失败时,会返回失败状态码。

    调用返回值说明如下:

    调用状态-成功:

    错误分类响应内容调用记录

    errcode

    message调用状态报错详情
    -

    0

    Success.成功-

    调用状态-服务端失败:

    错误分类响应内容调用记录

    errcode

    message调用状态报错详情
    服务器错误

    50000

    Internal server error, please check the error details in platform.服务端失败错误详细堆栈信息。

    调用状态-客户端失败:

    错误分类具体错误说明响应内容调用记录

    errcode

    message调用状态报错详情
    路径无效路径无效40400

    Request URL not exist, please check the APPID and API path.

    无调用记录
    请求方法错误请求方法错误40500

    Bad request method - expected request method: POST, actual request method: GET.

    请求体格式错误请求体格式错误40000Bad content type - expected content-type: application/json, actual content-type: x-www-form-urlencoded.客户端失败

    请求体格式错误 - 期望请求体格式:application/json;实际请求体格式:x-www-form-urlencoded。

    请求参数错误请求参数未传40001

    Missing parameter - expected parameter: [ name1: type1, name2: type2 ].

    缺少参数 - 期望传入的参数为:[ 名称1:类型1, 名称2:类型2]。

    请求参数格式不正确40002Invalid parameter - expected parameter: [ name1: type1, name2: type2 ].错误参数 - 期望传入的参数为:[ 名称1:类型1, 名称2:类型2]。
    认证错误认证信息未传40100

    Missing Authorization request header.

    缺少Authorization请求头。

    AppCode不正确40101

    AppCode authentication failed, please check the code and try again.

    AppCode认证失败。

    摘要认证信息不正确40102

    Digest authentication failed, please check the code and try again.

    摘要认证失败。

    应用授权错误应用没绑定对应的API40300Permission denied for this API.
    应用无权访问此API。
    应用绑定的API超过有效期40301Authorization expired for this API.

    应用访问此API的授权已过期。

    应用绑定的API超过访问频率40302Access per unit time exceeds the limit for this API.

    应用访问此API的频率超限。

    超时错误请求超时40800Request timeout.接口请求超时。


    附件列表


    主题: 数据服务
    Previous
    Next
    • Helpful
    • Not helpful
    • Only read

    滑鼠選中內容,快速回饋問題

    滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

    不再提示

    10s後關閉

    Get
    Help
    Online Support
    Professional technical support is provided to quickly help you solve problems.
    Online support is available from 9:00-12:00 and 13:30-17:30 on weekdays.
    Page Feedback
    You can provide suggestions and feedback for the current web page.
    Pre-Sales Consultation
    Business Consultation
    Business: international@fanruan.com
    Support: support@fanruan.com
    Page Feedback
    *Problem Type
    Cannot be empty
    Problem Description
    0/1000
    Cannot be empty

    Submitted successfully

    Network busy