kettle从入门到精通 第八十六课 ETL之kettle kettle调用https接口忽略SSL校验

1、在使用kettle调用接口的时候不可避免要调用http或者https接口,调用http接口kettle可以正常工作,但是遇到https接口的时候kettle就会提示证书有误,无法正常调用接口,今天咱们一起通过自研插件的方式来解决这个问题。自研插件需要有一定的java基础,git上有比较多的例子,本次不讲解如何开发组件,这里介绍下如何使用自研http/htts插件的使用。

2、将自研https插件文件直接放到kettle中的plugins目录下面,然后重启kettle,即可在kettle中找到本插件,如下图所示:

3、拖动相关步骤至画布绘制简单流程,如下图所示:

1)生成记录步骤进行模拟数据驱动。

2)https步骤进行调用https接口,请求数据。

3)json输入步骤解析接口返回的数据result字段。

4)写日志步骤打印result字段。

5)json输入步骤解析json数据中的data字段。

6)写日志步骤打印data字段。

4、https插件只有一个配置参数,该参数为json格式,如下图所示:

注:{{xxx}}表示从前置步骤获取参数xxx的值,${xxx}表示使用xxx变量的值。本步骤同时支持从前置步骤或者变量获取值。

inputType:rest 表示调用http/https接口。

useSSL:true,表示调用https接口时插件内部会创建一个自定义的 TrustManager,信任所有证书,不验证服务器的SSL证书。false则进行校验服务器的SSL证书,上图设置为false之后调用https接口返回的result为空。

headers:为http/https接口的header参数,如Content-type、token等。

params:为body参数。

url:为调用地址。

isUploadFile:是否上传文件标记。

resultField:结果字段名称,这里设置为result,后续步骤可以通过result字段拿到接口返回的数据。

5、生产记录步骤中设置body,method,url三个参数,如下图所示:

6、这里将useSSL设置为true,然后调用https接口,可以正常接收到result的值,如下图所示:

7、这里我们将url参数从变量中获取,调整为"url":"${url}",依然可以正常访问https接口,如下图所示:

相关推荐
拾光拾趣录11 小时前
无状态协议下的用户状态管理:Web应用如何保持用户登录态
前端·http·https
游戏开发爱好者819 小时前
iOS重构期调试实战:架构升级中的性能与数据保障策略
websocket·网络协议·tcp/ip·http·网络安全·https·udp
tmacfrank1 天前
Android 网络全栈攻略(四)—— TCPIP 协议族与 HTTPS 协议
android·网络·https
2501_916013741 天前
iOS 多线程导致接口乱序?抓包还原 + 请求调度优化实战
websocket·网络协议·tcp/ip·http·网络安全·https·udp
charlee442 天前
nginx部署发布Vite项目
nginx·性能优化·https·部署·vite
2501_915921432 天前
Fiddler 中文版怎么配合 Postman 与 Wireshark 做多环境接口调试?
websocket·网络协议·tcp/ip·http·网络安全·https·udp
游戏开发爱好者82 天前
iOS App首次启动请求异常调试:一次冷启动链路抓包与初始化流程修复
websocket·网络协议·tcp/ip·http·网络安全·https·udp
2501_915106322 天前
频繁迭代下完成iOS App应用上架App Store:一次快速交付项目的完整回顾
websocket·网络协议·tcp/ip·http·网络安全·https·udp
00后程序员张2 天前
免Mac上架实战:全平台iOS App上架流程的工具协作经验
websocket·网络协议·tcp/ip·http·网络安全·https·udp
陈敬雷-充电了么-CEO兼CTO2 天前
推荐算法系统系列>推荐数据仓库集市的ETL数据处理
大数据·数据库·数据仓库·数据挖掘·数据分析·etl·推荐算法