历史版本25 :API取数概述 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

在现实的业务中,有很多数据需要通过 API 接口调用使用。

因此本文为用户介绍在 FineDataLink 中使用 API 取数并进行数据解析处理,最终将数据写入指定数据库的方案。

注:若需要使用 FineDataLink 发布API ,或者将数据推送到 API 接口,详情参见:API专题

2. 索引编辑

关于 API  的数据开发,有以下几种常见的情况:

序号场景
方案功能组合示例
1API入门如何看 API 文档,以及如何在 FineDataLink 中使用 API/API入门
2直接从 API 接口取数,且数据为非 JSON 格式直接使用数据同步-API 取数并同步至数据库即可数据同步数据同步-API
3直接从 API 接口取数,且数据为 JSON 格式使用数据转换取数并通过JSON解析将 JSON数据解析成常用的数据格式,并同步至数据库数据转换「API输入+JSON解析+DB表输出」JSON解析
4直接从 API 接口取数,且数据为 XML 格式使用数据转换中的API 取数 并通过 XML 解析将 XML 数据解析成行列数据格式,并同步至数据库数据转换「API输入+XML解析+DB表输出」XML 解析
5需要先获取 Token 或者某个指定数据,然后再根据 Token 从指定 API 中取出数据首先通过参数赋值将需要获取的 Token或者数据取出并设置为参数,使用数据转换或者数据同步引用上一节点设置的参数取出需要数据并同步至数据库。参数赋值、数据转换(API输入+JSON解析+DB表输出)API取数-获取企业微信人员信息
6

分批取出接口中的数据

接口文档中包含数据页数、数据条数等信息

从接口中获取总页数作为参数,也就是需要执行的次数;

使用循环容器和内置参数 loopTimes,首次执行页码数为 1 ,然后递增执行取出每一页的数据。

参数赋值、循环容器、数据转换(API输入+JSON解析+DB表输出)API取数-按页数取数
7需要通过拼接获取鉴权签名参数,然后在接口中取出数据使用 SparkSQL 拼接鉴权签名参数,然后取出总页数、配合循环容器和内置参数 loopTimes,一页页取出数据。参数赋值、数据转换(SparkSQL、API输入、JSON解析、DB表输出)、循环容器API取数-加密身份验证&按页数取数
8

需要取出数据的API

接口文档中没有页数相关的参数,但是接口中有 limit 参数限制接口取数量

获取当前数据表中最大 id 值,每次从最大 id 开始取出100条数据,循环多次,直至取完所有的数据。参数赋值、数据转换(API输入、JSON解析、DB表输出)、循环容器API取数-限制取数量且无页数参数
9公司内部使用企业微信,行政部门想要统计每月员工的打卡数据,将这些数据取出至指定数据库使用。
  • 将「通讯录同步」的企业微信人员 userid 和 department 信息从接口中取出,使用 获取成员ID列表 接口直接获取用户的 userid 和 department 数据。

  • 然后调用 获取打卡月报数据 接口,获取指定员工指定时间段内的打卡月报统计数据。

参数赋值、SparkSQL、参数输出、循环容器API取数-获取当月企微月报打卡数据
10公司内部使用金蝶云星空进行供应链管理。

希望将 销售报价单的单据查询接口 中的数据取出,以便进行数据分析。

  • 获取一段时间(开始时间和结束时间)作为日期参数,取出该段时间内的数据,后续通过定时调度任务进行追加。

  • 如何取出该时间段数据:先清空日期区间内的数据,然后通过循环容器循环次数来确定每次取数的开始行数,直到结果数据行数无法整除每次区数量,再跳出循环。

参数赋值、SQL脚本、循环容器、条件分支API取数-金蝶云星空销售报价单
11通过MD5加密获取签名 sign,然后从易流云接口获取用户车辆最新位置信息使用 SparkSQL中的 MD5 加密函数获取签名,然后取出接口数据。SparkSQL、参数输出API取数-易流云MD5加密

3. 拓展阅读编辑

  • 如果需加工、融合后的数据封装并发布为规范化 API 接口数据,供外部系统调用,实现数据价值输出及共享开放。详情参见:数据服务概述

  • 如果需要将多应用系统的数据通过FDL打通,实现业务系统间的数据交互(交互的形式为API)。比如系统中数据取出并分析后,希望直接把分析结果数据推送到业务系统中(以 API 的形式),形成业务系统里面需要直接处理的业务数据,打通分析到业务的流程。详情参见:API输出逻辑说明