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

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 查看结果

相关推荐
萧曵 丶4 分钟前
事务ACID特性详解
数据库·事务·acid
kejiayuan43 分钟前
CTE更易懂的SQL风格
数据库·sql
kaico20181 小时前
MySQL的索引
数据库·mysql
清水白石0081 小时前
解构异步编程的两种哲学:从 asyncio 到 Trio,理解 Nursery 的魔力
运维·服务器·数据库·python
资生算法程序员_畅想家_剑魔2 小时前
Mysql常见报错解决分享-01-Invalid escape character in string.
数据库·mysql
PyHaVolask2 小时前
SQL注入漏洞原理
数据库·sql
ptc学习者2 小时前
黑格尔时代后崩解的辩证法
数据库
代码游侠2 小时前
应用——智能配电箱监控系统
linux·服务器·数据库·笔记·算法·sqlite
!chen3 小时前
EF Core自定义映射PostgreSQL原生函数
数据库·postgresql
霖霖总总3 小时前
[小技巧14]MySQL 8.0 系统变量设置全解析:SET GLOBAL、SET PERSIST 与 SET PERSIST_ONLY 的区别与应用
数据库·mysql