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

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

需求说明

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

完整实例

Kettle REST Client获取token调用接口解析JSON入文件实例_第1张图片

解决方法

  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

Kettle REST Client获取token调用接口解析JSON入文件实例_第2张图片

Step2:调用接口获得token

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

Kettle REST Client获取token调用接口解析JSON入文件实例_第3张图片

Step3:解析JSON里的Token

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

Kettle REST Client获取token调用接口解析JSON入文件实例_第4张图片

#定义解析JSON的方法

Kettle REST Client获取token调用接口解析JSON入文件实例_第5张图片

Step4:拼接新的调用参数

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

Kettle REST Client获取token调用接口解析JSON入文件实例_第6张图片

Step5:定义接口参数

拖一个REST CLIENT组件:

        1、勾选从字段里获取URL

        2、选择URL字段变量zzzfinsurl

        3、选择请求类型POST,

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

        5、设置返回字段zzzresult

        6、设置HTTP状态字段zzzcode

Kettle REST Client获取token调用接口解析JSON入文件实例_第7张图片

Step6:判断接口调用状态

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

Kettle REST Client获取token调用接口解析JSON入文件实例_第8张图片

Step7:解析接口调用结果

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

Kettle REST Client获取token调用接口解析JSON入文件实例_第9张图片

#指定JSON解析方法

Kettle REST Client获取token调用接口解析JSON入文件实例_第10张图片

Step8:入文件或者入库

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

Kettle REST Client获取token调用接口解析JSON入文件实例_第11张图片

Kettle REST Client获取token调用接口解析JSON入文件实例_第12张图片

延展阅读

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

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

Kettle REST Client获取token调用接口解析JSON入文件实例_第13张图片

#2 点击选择字段

Kettle REST Client获取token调用接口解析JSON入文件实例_第14张图片

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

Kettle REST Client获取token调用接口解析JSON入文件实例_第15张图片

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

Step9: 调用验证

#1 调用转换

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

Kettle REST Client获取token调用接口解析JSON入文件实例_第16张图片

#2 查看结果

Kettle REST Client获取token调用接口解析JSON入文件实例_第17张图片

你可能感兴趣的:(ETL-Kettle,json,kettle,ETL,数据库,rest,client,kettle调用接口)