发布API-查询NULL值数据

  • Last update: October 24, 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

    支持指定多级API路径,在API信息配置页面,「路径」支持指定:英文、数字、下划线(_)、连字符(-)、正斜杠(/)

    支持发布API时直接绑定应用

    支持发布API时进行应用配置测试

    1.2 应用场景

    用户想要在发布API 时,对 API 取数逻辑进行设置:取出发布的 API 中为 NULL 的数据,同时也能正常查询其他数据。

    FineDataLink 支持API参数传入NULL值。

    2. 操作步骤

    示例需要将 S订单中数据发布为 API,并在取数时可取出地区数据为 NULL 值的数据。

    2.1 新建API

    进入「数据服务」,点击「新建>API」,进入API 发布编辑界面,如下图所示:

    2.2 输入API信息

    设置 API名称、可对API进行描述说明,同时设置发布的API 的路径,此处选择了 x-www-form-urlencoded 请求格式,并选择是否开启认证,设置超时时间,

    然后可将创建的 API 添加至应用中,如下图所示:

    当然若此时没有创建应用,可不添加应用,在完成 API 创建后,在应用列表中绑定 API ,详情参见:绑定API至应用

    API的请求路径、请求格式、返回格式等基本信息详情参见:发布API

    注:若用户想要对发布的API进行层级设计,可以使用连字符(-)、正斜杠(/)等符号设计API路径,如下图所示:

    2.3 设置发布内容及参数

    选择要发布的数据源以及数据连接,然后输入查询 SQL 语句,如下图所示:

    SELECT * FROM S订单 WHERE IF(${area} IS NULL, 货主地区 IS NULL, 货主地区 = ${area})

    该参数在 API发布后,可在通过 API 取数时使用 SQL 语句设置的参数进行条件取数。

    注:为了解决 SQL 防注入问题,FineDataLink 将参数中包含的单引号默认添加进防注入限制转义字符中,也就是默认 SQL 语句中参数中的数据不允许加单引号,需要在查询预览的时候手动给参数默认值加引号进行预览。

    若SQL 语句中用到了 IN 语法,需要在参数值中有单引号来分割多个数据,若用户需要 SQL 语句中的参数需要有引号,则需要在 SQL 防注入 中将转义字符单引号取消选择。

    注:示例为 MySQL 数据库语法,不同数据库的语法不同,用户可根据实际使用数据库类型修改语法。

    请求参数配置中会自动识别查询 SQL 设置的参数名,可以定义该参数的参数类型,勾选「参数必填」并进行描述,如下图所示:

    参数必填即当前参数不能为空。

    点击查询预览,输入预览参数值,点击「预览」,如下图

    即可看到满足条件的预览结果,如下图所示:

    2.4 预览测试

    点击下一步进入「预览测试」界面。

    点击「测试API调用」,选择在API信息中已绑定的应用,然后输入请求参数值,补充请求参数内容进行测试,即可看到测试接口返回结果,如下图所示:

    点击「生成API」即可完成API生成,如下图所示:

    2.5 API上线

    API列表展示所有API信息,选择指定的API ,可查看基本信息和API 的内容以及参数。

    在右上角点击「上线」,即可发布 API,如下图所示:

    4. 后续步骤

    若用户在发布时没有将 API 添加至指定应用,也可以在 API应用管理 中将上线的 API 通过应用进行管理,以便能够被调用。

    若需要使用已经发布的API,详情参见:使用数据服务发布的API(POST x-www-form-urlencoded请求)

    可看到取出参数为 NULL 值的数据,如下图所示:

    对已经发布的API进行管理,详情参见:服务运维


    附件列表


    主题: 数据服务
    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