Kettle REST Client获取token调用接口解析JSON入文件实例

Kettle REST Client获取token调用接口解析JSON入文件实例

需求说明

通过kettle组件调用接口并解析JSON成结构化数据入文件。

完整实例

解决方法

  1. 利用生成记录组件定义URL参数
  2. 通过REST ClENT组件请求得到TOKEN
  3. 通过JSON INPUT组件解析接口请求的结果
  4. 通过JAVASCRIPT组件拼接生成业务接口的完整参数
  5. 通过REST ClENT组件请求得到JSON结果
  6. 通过JSON INPUT组件解析业务接口请求的结果
  7. Swich/Case组件判断接口调用状态
  8. 通过文本文件输出组件保存解析后结果。

Step0:新建kettle转换

Step1:定义原始参数

拖一个生成记录组件,定义tokenurl

Step2:调用接口获得token

拖一个REST CLIENT组件用户获取token,勾选从从字段里获取URL,设置请求方法为GET并定义结果字段名为result

Step3:解析JSON里的Token

拖一个JSON Input组件,勾选原定义在一个字段里,字段选择result。

#定义解析JSON的方法

Step4:拼接新的调用参数

拖个JAVASCRIPT组件定义新的变量拼接完成的接口url。

Step5:定义接口参数

拖一个REST CLIENT组件:

        1、勾选从字段里获取URL

        2、选择URL字段变量zzzfinsurl

        3、选择请求类型POST,

        4、设置body字段生成记录组件里定义的zzzbody

        5、设置返回字段zzzresult

        6、设置HTTP状态字段zzzcode

Step6:判断接口调用状态

拖一个Switch/case组件,对Http状态进行判断,如果请求状态码是200则执行JSON Input组件。

Step7:解析接口调用结果

拖一个JSON INPUT组件,勾选原定义在一个字段里,选择源字段zzzresult

#指定JSON解析方法

Step8:入文件或者入库

拖一个文本文件输出组件,指定文件路径名、字段映射关系。

延展阅读

如果JSON解析不熟悉,可以先拷贝一个接口调用的JSON文件,在JSON INPUT组件里指定JSON文件,点击选择字段来让kettle生成解析表达式。

#1 指定本地JSON文件,主要这里要取消勾选原定义在一个字段里

#2 点击选择字段

#3 勾选要解析的字段(支持多选)

#4 注意:因为这里为了方便生成JSON解析表达式,实际调用时需要再次勾选原定义在一个字段里

Step9: 调用验证

#1 调用转换

/root/software/data-integration/pan.sh -file=/root/workbase/RESTCLIENT.ktr

#2 查看结果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/112004.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

储存高精长整型の另一种思路——二维数组

利用二维数组储存高精长整型 题目解题思路问题解决代码实现总结反思 题目 luogu P2437 蜜蜂路线 解题思路 最初只觉得是一道很简单的递推 先考虑从第一个点出发的情况,对于第 k ( k ≥ 3 ) k (k≥3) k(k≥3)个点,路线数表示如下: a [ k …

【二叉搜索树】将有序数组转换为二叉搜索树-力扣 108 题

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kuan 的首页,持续学…

人工智能AI 全栈体系(四)

第一章 神经网络是如何实现的 除了全连接神经网络外,还有其他形式的神经网络。 此节将讲述神经网络的另一种形式:卷积神经网络。 四、卷积神经网络 首先我们看看全连接神经网络有什么不足。正如其名字一样,全连接神经网络,两个…

vscode json 无决找到“e:\...“

在上一章中提到了解决 无法使用 compilerPath 的问题,该问题明显是相对路径配置错误。 但是解决该问题后,发现输出了新的问题: 由该输出可知,在 e:\gitsource\ODrive-fw-v0.5.1\Firmware\ 路径下未找到 D:\gcc-arm-none-eabi-10.3-2021.10…

004-Windows下开发环境搭建

Windows下开发环境搭建 文章目录 Windows下开发环境搭建项目介绍版本控制工具Git 与 SVNWindow下安装Git Qt 开发工具静态编译Qt环境安装 串口模拟器比较工具SQLite 数据库查看小工具预告 关键字: Qt、 Qml、 开发环境、 Windows、 C 项目介绍 欢迎来到我们的 …

Postman应用——接口请求(Get和Post请求)

文章目录 新增请求Get请求Post请求 这里只讲用的比较多的Get和Post请求方式,也可以遵循restful api接口规范,使用其他请求方式。 GET(SELECT):从服务器取出资源(一项或多项)POST(CR…

控制台日志打印console的封装,加入美化与打印开关

控制台日志打印console的封装,加入美化与打印开关 为什么要写这个? 封装这个控制台日志打印工具,主要是在项目中自己做的SDK需要提供给其他开发人员使用,加入了日志美化和打印打开,方便了开发人员查找SDK中的日志&am…

目标检测前言,RCNN,Fast RCNN,Faster RCNN

一、RCNN: 找到概率最高的目标之后,与其他目标进行IOU交并比计算,若高于一定值,则说明这两张图片预测的是同一个目标,则把概率低的目标删掉 二、Fast RCNN 因为是直接得到特征图之后进行映射,所以不限制输入…

uniapp抽取组件绑定事件中箭头函数含花括号无法解析

版本: "dcloudio/uni-ui": "^1.4.27", "vue": "> 2.6.14 < 2.7"... 箭头函数后含有花括号的时候, getData就拿不到val参数 , 解决办法就是去除花括号 // 错误代码: <SearchComp change"(val) > { getData({ val …

【大数据】Doris 构建实时数仓落地方案详解(二):Doris 核心功能解读

Doris 构建实时数仓落地方案详解&#xff08;二&#xff09;&#xff1a;Doris 核心功能解读 1.Doris 发展历程2.Doris 三大模型3.Doris 数据导入4.Doris 多表关联5.Doris 核心设计6.Doris 查询优化7.Doris 应对实时数仓的痛点 1.Doris 发展历程 Apache Doris 是由 百度 研发并…

讨论问题--数据类型、数组、传值/址API函数等

前言 数据类型是编程语言中用于表示数据的分类。常见的数据类型包括整数、浮点数、字符串、布尔值等。数据类型决定了变量能存储的值的种类和范围。 数组是一种存储多个相同类型数据的数据结构。它通过索引来访问并操作其中的元素。数组在内存中是连续存储的&#xff0c;可以…

OpenCV之YOLOv2-tiny目标检测

&#x1f482; 个人主页:风间琉璃&#x1f91f; 版权: 本文由【风间琉璃】原创、在CSDN首发、需要转载请联系博主&#x1f4ac; 如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连)和订阅专栏哦 目录 前言 一、YOLOv2-tiny介绍 二、预处理 三、模型加载与推理 四、解析输…