1. 概述
1.1 版本
「数据同步-API」功能包含的设置项与 API 输入算子 相同,功能变动请参见:API输入 文档的 1.1 节内容。
1.2 应用场景
出于安全考虑,有时不允许直接访问数据库,而是以 API 的形式对外提供数据。
此时用户需要通过 API 接口将数据取出并将其存放至对应的数据库中。
FDL 提供两个功能进行接口取数,区别如下:
功能 | 说明 |
---|---|
「数据同步-API」功能(本文介绍功能) | 若接口返回值为较简单的 JSON 格式,不需要复杂的解析处理,可参考本文进行接口取数 |
API输入 算子 | 若用户希望取出 API 数据后做进一步的数据处理,此时,「数据同步-API」功能不能满足需求。需要使用 API输入 算子接口取数后,再继续使用其他算子对接口数据进行处理 |
1.3 功能说明
FineDataLink 支持从 API 接口中取数,本文将介绍如何在「数据同步」节点中通过 API 接口取数。
2. 功能使用前必读
1)请详细阅读 API输入 文档,了解使用 FDL 从接口取数的前提条件、使用限制、各个设置项说明等。
2)「数据同步-API」功能从接口取数后,可进行简单 JSON 解析,最后可以保存到数据库、简道云、文件系统等位置中。如下图所示:
3. 示例
3.1 了解待调用接口信息
本文示例中,我们使用 FDL 发布的接口为例,讲述如何使用「数据同步-API」功能从接口取数。
接口信息:计算总页数_接口文档_.docx(为 数据服务 创建的接口)
从接口文档中,我们了解到:
类型 | 具体说明 |
---|---|
请求地址 | https://demo.finedatalink.com/service/publish/87c912e5-7b45-4b67-9254-0e5818fd4eee/apiyeshu |
Content-Type | application/json |
请求方式 | POST |
Body 内容 | { "paging": { "pageNum": 1, "pageSize": 10 }, "params": [{ "name": "dtime", "value": " " }] } Body 内包含参数,名称为 dtime,调用该接口时,需要使用补充参数值进行取数 |
返回内容 (调用接口时用不到,可判断是否调用成功) | { "totalNum": 1, 取出的具体数据在 data 字段中,可解析 data 字段 |
3.2 定时任务设置
1)新建定时任务,拖入「数据同步」节点。
2)「数据同步」节点中,根据接口文档,设置请求方式、接口地址、Body 内容。如下图所示:
本文示例中,响应体处理中输入$.data,解析 data 字段。点击「数据预览」,如下图所示:
若不解析 data 字段,取出的数据如下图所示:
3)点击「数据去向与映射」Tab,可将取出的接口数据保存到数据库中。如下图所示:
4)写入方式选择「追加写入数据」。
3.3 效果查看
任务运行后,日志如下图所示:
数据库数据如下图所示: