欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 教育 > 高考 > kettle从入门到精通 第九十一课 ETL之kettle http接口下载文件流

kettle从入门到精通 第九十一课 ETL之kettle http接口下载文件流

2025/9/18 14:48:32 来源:https://blog.csdn.net/zhangjin1222/article/details/145333798  浏览:    关键词:kettle从入门到精通 第九十一课 ETL之kettle http接口下载文件流

 1、场景需求

群里一位老朋友想通过http接口下载文件流,然后将文件流保存为文件存储到本地,如下图所示:

 2、做过应用程序研发,对http知识有所了解的,结合对方发的postman截图,一眼就知道了接口的真实面目。接口返回的content-type是application/octet-stream且有文件下载说明接口通过Reponse将文件流输出,接口本身是没有返回值的。不要问我为啥知道,这就是经验。如下图所示:

 3、开始折腾

1)首先通过python搞个文件流接口进行模拟,如下图所示:

 2)使用http post 组件请求python 文件下载接口,能接收到文件流,但是文件无法正常复原,如服务器输出的是zip文件,但是文本文件输出步骤将文件流写进了txt文件,原有组件无法解决此问题。

 4、kettle自定义插件/组件

1)通过原有步骤无法解决,咱们就自定义组件来解析文件流。自定义组件开发过程略。

将自定义插件文件放到kettle的plugins文件下,重启kettle即可通过左侧转换分类找到此组件,如下图所示:

 2)通过生成记录步骤来模拟http请求相关参数,如下图所示:

 3)javascript步骤来沟通header参数,如下图所示:

 4)通过kk自定义转换插件设置请求参数,{ {xx}}表示从前面步骤获取字段值且自动替换,如下图所示:

 5)将demo发给朋友之后,将相关参数修改之后,完美实现。

 5、其他思路

1)通过js调用外部jar。

2)通过kettle调用pytohn脚本实现。

3)通过kettle的java步骤来实现。

4)通过shell脚本实现。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词