KETTLE调用接口数据(HTTP,API接口,包含list集合)

先看流程在这里插入图片描述在调用接口之前首先先需要知道一些必要的参数
url:就是接口地址
body:相当于sql语句中的where条件(select * from dual where body=)
再不明白请看图,其中百度就相当于body
在这里插入图片描述

token:就相当于打开接口的钥匙,URL就是门,想进门你就得有钥匙,请看具体解释
在这里插入图片描述 关于这个token看具体情况,有的接口需要token,有的接口不需要,我展示的这个接口需要token但是他会一直在变,苦苦找寻办法没有解决,最后让做ESB的同事给我代理出来了
page:从第几页开始
size:每页多少条数据

步骤一:
在这里插入图片描述


DELETE FROM WR_EXPENSE_APPLY WHERE SUBSTR(submittedDate,0,4) = TO_CHAR(SYSDATE,'yyyy')

====================================================================

步骤二:

在这里插入图片描述===================================================================

步骤三设置变量:在这里插入图片描述====================================================================

步骤四获取变量:
在这里插入图片描述====================================================================
在这里插入图片描述====================================================================
在这里插入图片描述

// 获取同步时间区间、开始页、每页行数
var startDate = getVariable("startDate","");
var endDate = getVariable("endDate","");
var page = getVariable("page","");
var size = getVariable("size","");

//var status = getVariable("status","");

//var useLastModifiedDate = getVariable("useLastModifiedDate","");

var companyOid = getVariable("companyOid","");

// 拼接请求体内容
var body = '{"startDate":"'+ startDate +'","endDate":"'+ endDate +'","page":'+ page +',"size":'+ size +',"companyOid":'+ companyOid +'}';
//"useLastModifiedDate":'+ useLastModifiedDate +',

====================================================================
在这里插入图片描述这里的写日志看个人喜好吧,我是为了测试有没有传参

==================================================================
在这里插入图片描述这里的result为body输出内容存放的字段,比如一千条数据存放在了result字段里,为一行数据

===================================================================

重头戏!!!
在这里插入图片描述获取的数据为json格式那么就需要,json解析,详见图中"字段"

===================================================================
在这里插入图片描述
最后表输出就不用说了

=================================================================

步骤五:循环页数取数据
在这里插入图片描述// 获取当前页 var page = parent_job.getVariable("page"); page ++; parent_job.setVariable("page",page); true;

====================================================================
在这里插入图片描述====================================================================
在这里插入图片描述

很多童鞋就要问了,我怎么知道接口返回的数据有多少页啊,说实话我也不知道,找了很多办法没解决
最后我只能瞎编一个字段用来存放页数,页数也是我自己估算出来的(设置变量的count字段,我设置了40页)

在这里插入图片描述===================================================================
最后一个问题设置变量的时候怎么设置带有list集合的参数?
简单来说就是:请看下图:
在这里插入图片描述解决方法:
在这里插入图片描述
没错就是设置变量,直接在这个字段上把条件写死,再去获取变量,完美解决,很笨,但很实用

====================================================================
最后附一张图,
在这里插入图片描述
本张图的出处来自https://blog.csdn.net/qq_39425846/article/details/108508895,如果看不懂这篇文章可以移步至这个链接

  • 11
    点赞
  • 57
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值