历史版本10 :发布API-多值查询 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

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格式

1.2 应用场景

用户想要在发布API 时,对 API 取数逻辑进行设置:使用 SQL 的 IN 语句一个参数传入多值,对指定表的指定列做多值查询。

2. 操作步骤编辑

示例需要将 S订单中数据发布为 API,并在取数时可同时取出多个地区(华北、华东、华南等等)的数据。

2.1 新建API

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

2.2 输入API信息

设置 API名称、可对API进行描述说明,同时设置发布的API 的路径,并选择是否开启认证,最后设置超时时间,如下图所示:

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

2.3 设置发布内容及参数

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

SELECT * FROM S订单 WHERE 货主地区 IN ('${货主地区}')

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

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

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

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

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

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

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

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

2.4 预览测试

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

点击「测试API调用」,输入请求参数值,补充 body 内容进行测试,即可看到测试接口返回结果,如下图所示:

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

2.5 API上线

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

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

4. 后续步骤编辑

将上线的 API 通过应用进行管理,以便能够被调用,详情参见:API应用管理

若需要使用已经发布的API,详情参见:使用发布的API,调用效果如下图所示:

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