反馈已提交

网络繁忙

API输出逻辑说明

  • 文档创建者:Roxy
  • 历史版本:16
  • 最近更新:Roxy 于 2023-12-13
  • 1. 概述

    1.1 版本

    FineDataLink 版本
    功能变动
    4.0.19-
    4.0.23

     API 配置中的 body 请求内容支持使用 Content-Type 为 form-data 和 x-www-form-urlencoded 请求格式,可以添加多行,每行选择一个字段,使用字段名作为键名、使用字段值作为键值,详情参见本文第四节。

    4.1.1
    • 支持自签名证书,详情参见本文第三章

    • 支持控制 API 调用频率,详情参见本文第三章

    • 支持 PATCH 请求方法,详情参见本文第三章

    4.1.3当前置节点的数据流有多行时,API输出支持选择其中一行数据流进行配置,无需调整前置节点的数据流行数

    当API输出遍历多行数据流循环调用时,将每一次调用的响应体都添加到输出参数的数组中

    1.2 应用场景

    用户需要将多应用系统的数据通过FDL打通,实现业务系统间的数据交互(交互的形式为API)。

    • 比如系统中数据取出并分析后,希望直接把分析结果数据推送到业务系统中(以 API 的形式),形成业务系统里面需要直接处理的业务数据,打通分析到业务的流程。

    • 或者希望实现简道云数据下云后将数据推送至指定API接口。

    1.3 功能简介

    FineDataLink 支持 API 输出,通过 API 写入满足应用集成场景。

    2. 使用限制

    • API输出支持 POST、PUT、PATCH、DELETE 请求方式。注:GET 方法不需要前置输入字段,如果需要可以使用输入算子去实现。

    3. 功能说明

    维度
    说明
    API配置请求方式

    API输出支持 POST、PUT、PATCH、DELETE 请求方式。


    区别于 PUT 的更新资源,PATCH 方法用来更新局部资源,例如有一个 UserInfo ,里面有userId, userName, userGender等10个字段。因为需求,在某个特别的页面里只能修改 userName ,这时候的更新可以使用 PATCH 只传一个 userName 到指定资源去,表示该请求是一个局部更新,后端仅更新接收到的字段。

    Headers 请求头中的Content-Type

    • 支持 application/x-www-form-urlencoded、application/json、application/xml、multipart/form-data、text/xml、text/plain 请求格式;

    • 允许用户在 Headers 内对 Content-Type 进行自定义设置,即 Content-Type 的下拉框支持输入非下拉列表值;

    • Body与Content-Type双向联动

      Body一级选项
      Body二级选项
      Content-Type默认值
      说明
      form-data

      multipart/form-data 
      允许添加多行、每行可以选择一个字段,使用字段名作为键名、使用字段值作为键值
      x-www-form-urlencoded

      application/x-www-form-urlencoded
      允许添加多行、每行可以选择一个字段,使用字段名作为键名、使用字段值作为键值
      raw
      JSON
      application/json
      支持选择单个字段选择
      XML
      application/xml 
      支持选择单个字段选择
      TEXT
      text/plain
      支持选择单个字段选择
    • 如果输入的 Content-Type 不在联动列表内,则 Body 内格式较改变 Content-Type 前不发生变化;

    • 如果用户输入不在列表内的 Content-Type 后,再修改Body的格式,则自动覆盖Headers内的Content-Type为联动值;

    TLS/SSL

    若用户有自签名证书,可开启自签名证书。并手动上传证书并输入密码。

    若用户需要绕过证书验证,可以查看下文「其他说明」关闭 SSL 证书验证。

    返回值处理API输出的返回值处理
    • API输出执行状态与 HTTP 响应状态绑定:

    运行时和预览时只有当响应状态码为2xx时,执行成功,否则报错,错误信息内包含具体的状态码和响应body信息,具体见本文第六节。

    • 「返回响应值至参数」选项为复选框,默认不勾选,勾选后用户可以设定参数名与默认值,其中默认值为用户自行从API接口文档内复制粘贴的多行文本。

    调用频率控制当用户设置当前API调用的频率限制时,可在一次执行实例中控制该API的调用频率。

    控制频率:秒/分钟/小时/天

    例如控制调用频率为 1 分钟一次,则任务执行后可以看到日志,API 一分钟调用一次,如下图所示:

    其他说明-

    API输出支持关闭SSL证书验证:

    支持用户在Headers内新增一个参数、参数名为SSL-certificate-verification,当客户配置此参数时:

    当SSL-certificate-verification值为false时,FDL在调用API不进行证书有效性验证(当然仅当目标端的API配置了https时,才需要进行证书有效性验证)

    注:在实际传给服务端的API的Headers内去除此参数,此参数仅应用于FDL内部;

    4. 操作流程

    1)使用算子或者节点取出需要进行 API 输出的数据。

    2)根据需要API写入的接口数据格式,使用数据开发算子或者节点进行数据处理,如果写入接口数据为 JSON 格式,可以使用 JSON生成 将数据生成为 JSON 格式。

    3)进行 API 输出设置,选择需要输出API的请求方式并输入API  URL ,设置 Query 参数、认证方式和请求头等。

    然后根据接口设置 Body 传参样式,将前置算子或者节点处理好的字段作为API body 中的参数,如下图所示:

    4)处理 API 返回值。

    5. 运行日志说明

    日志分类报错内容(不包含时间部分)
    任务预览&选择节点时报错com.fr.dp.exception.FineDPException: API输出失败 -API输出的源字段不能为空 (后端报错信息及堆栈)
    com.fr.dp.exception.FineDPException: 未接入前置节点 - previous node of [API输出] is absent
    com.fr.dp.exception.FineDPException: JSON格式化失败 - JSON格式非法 (后端报错信息及堆栈)
    com.fr.dp.exception.FineDPException: XML格式化失败 - XML格式非法 (后端报错信息及堆栈)
    com.fr.dp.exception.FineDPException:API连接超时 - 网络超时(后端报错信息及堆栈)
    com.fr.dp.exception.FineDPException:API连接响应错误 - API响应错误(API响应状态码、API响应body(前10行)、后端报错信息及堆栈)
    任务构建时报错

    任务构建失败

    异常节点:【数据转换】

    [API输出]: 源字段为空

    任务构建失败

    异常节点:【数据转换】

    [API输出]:未接入前置节点

    任务构建失败

    异常节点:【数据转换】

    [API输出]:JSON格式非法

    任务构建失败

    异常节点:【数据转换】

    [API输出]:XML格式非法

    任务运行时报错

    [数据转换] - 执行失败

    [API输出]:API连接超时 - (后端报错信息)

    [数据转换] - 执行失败

    [API输出]:API连接响应错误 - API响应错误(API响应状态码、API响应body(前10行)、后端报错信息及堆栈)

    6. 应用示例

    推荐API输出典型应用场景:API输出典型示例


    附件列表


    主题: 数据开发
    • 有帮助
    • 没帮助
    • 只是浏览
    • 评价文档,奖励 1 ~ 100 随机 F 豆!

    鼠标选中内容,快速反馈问题

    鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

    不再提示

    10s后关闭

    联系我们
    在线支持
    获取专业技术支持,快速帮助您解决问题
    工作日9:00-12:00,13:30-17:30在线
    页面反馈
    针对当前网页的建议、问题反馈
    售前咨询
    采购需求/获取报价/预约演示
    或拨打: 400-811-8890 转1
    qr
    热线电话
    咨询/故障救援热线:400-811-8890转2
    总裁办24H投诉:17312781526
    提交页面反馈
    仅适用于当前网页的意见收集,帆软产品问题请在 问答板块提问前往服务平台 获取技术支持