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

2023-09-18 22:48:03

Kettle REST Client通过GET获取token以POST方式请求接口解析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 查看结果

更多推荐

西门子 S7 协议解析

目录1建立连接2读数据3写数据1建立连接0300001611E00000000100C1021000C2020301C0010A(第一次握手报文)0300报文头0016数据总长度:2211E00000000100C1021000C2020301C0010A报文结束0300001611D00001001100C0010A

shell脚本相关基础操作汇总

汇总起来,备忘查看。目录1,脚本的参数传递与接收2,判断是否有传入的参数、获得参数个数3,获取传入的全部参数、遍历全部参数4,获取当前脚本对应的进程pid5,判断目录、文件等是否存在6,判断变量是否为空7,判断上一个命令是否执行正常8,获取命令的结果9,设置/删除全局环境变量设置环境变量将命令执行结果设置为环境变量设置

积木报表 JimuReport v1.6.2-GA5版本发布—高危SQL漏洞安全加固版本

项目介绍一款免费的数据可视化报表,含报表和大屏设计,像搭建积木一样在线设计报表!功能涵盖,数据报表、打印设计、图表报表、大屏设计等!Web版报表设计器,类似于excel操作风格,通过拖拽完成报表设计。秉承“简单、易用、专业”的产品理念,极大的降低报表开发难度、缩短开发周期、节省成本、解决各类报表难题。领先的企业级Web

乐鑫科技全球首批支持蓝牙 Mesh Protocol 1.1 协议

乐鑫科技(688018.SH)非常高兴地宣布,其自研的蓝牙Mesh协议栈ESP-BLE-MESH现已支持最新蓝牙MeshProtocol1.1协议的全部功能,成为全球首批在蓝牙技术联盟(BluetoothSIG)正式发布该协议之前支持该更新的公司之一。这意味着乐鑫在低功耗蓝牙无线通信领域潜心专研产品和方案,其技术实力和

BLE Mesh蓝牙mesh传输大数据包传输文件照片等大数据量通讯

1、BLEMesh数据传输现状BLEMesh网络技术是低功耗蓝牙的一个进阶版,Mesh扩大了蓝牙在应用中的规模和范围,因为它同时支持超过三万个网络节点,可以跨越大型建筑物,不仅可以使得医疗健康应用更加方便快捷,还能监测像学校这类的大型公共场所随时监测学生的安全状况。BLEMesh覆盖范围通过mesh网络的relay(中

接口自动化测试(Python+Requests+Unittest)

(1)接口自动化测试的意义、前后端分离思想接口自动化测试的优缺点:优点:测试复用性。维护成本相对UI自动化低一些。为什么UI自动化维护成本更高?因为前端页面变化太快,而且UI自动化比较耗时(比如等待页面元素的加载、添加等待时间、定位元素、操作元素、模拟页面动作这些都需要时间)为什么接口自动化维护成本较低?因为接口较稳定

nova相机功能又㕛叒叕升级了!!!拍人像更自然

nova系列手机一直以其高颜值外观和性能体验,持续热销,成为当下年轻人追捧的手机之一。其出色的影像能力,无论是日常生活中的风景拍摄还是人物拍摄,都能够拍摄出非常清晰细腻的照片,同时还配备了多种摄影模式,让用户能够拍摄出更加专业和有创意的照片。而关于人像拍摄,广大用户如今更青睐于相对原生、人物真实且细节饱满的人像特写相片

棒球教学知识架构·棒球1号位

棒球教学知识架构1.棒球运动的基本认知棒球运动的起源和发展历程棒球运动起源于19世纪中叶的美国,最初是一种儿童游戏,使用木棒和石头或木头制成的球进行比赛。后来,人们开始使用橡胶球和棒子,并规定了比赛规则和场地标准,棒球运动逐渐发展成为一项正式的体育运动。随着时间的推移,棒球运动在美国和加拿大广受欢迎,并逐渐传播到世界各

Doris 2.0.1 Dockerfile制作

镜像编译准备工作1、创建目录└──docker-build//构建根目录└──fe//FE构建目录├──dockerfile//dockerfile脚本└──resource//资源目录├──init_fe.sh//启动及注册脚本└──apache-doris-x.x.x-bin-fe.tar.gz//二进制程序包mk

最新AI创作系统+ChatGPT商业运营源码+支持GPT4.0+支持国内AI模型/支持AI绘画

一、AI创作系统SparkAi系统是基于很火的GPT提问进行开发的Ai智能问答系统。本期针对源码系统整体测试下来非常完美,可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如何搭建部署AI创作ChatGPT系统?小编这里写一个详细图文教程吧!SparkAi程序使用Nestjs和Vue3框架

软件设计师笔记系列(一)

😀前言在日常生活和工作中,我们依赖于各种各样的计算机系统来完成一系列复杂的任务。计算机系统不仅仅是硬件设备的集合,它还包括一系列用于协调硬件工作的软件和协议。了解计算机系统的基础知识,包括其构造和功能,是理解现代技术世界的关键步骤。在这一章节中,我们将探讨计算机系统的核心组件和原理,从中央处理单元(CPU)的功能和组

热文推荐