需求说明
在 Kettle (Pentaho Data Integration, PDI) 中调用企微开放平台接口,核心是先用 corpid 和 corpsecret 换取 access_token,再将此 Token 作为后续 API 调用的凭证。因为企微 Token 有效期通常为 2 小时,建议在流程中设计缓存 或变量传递机制,避免频繁请求。
以下是详细的操作流程,主要分为三步:
1、期准备:获取应用凭证
在配置 Kettle 之前,你需要先获取企微应用的凭证:
- 登录 企微开放平台,进入你的自建应用。
- 在左侧菜单凭证与基础信息中,复制 corpid 和 corpsecret 。
2、使用 REST Client 步骤 (推荐)
这种方式无需编写代码,通过可视化配置完成。
- 新建转换,拖入一个 REST Client 步骤。
- 配置请求:
URL:填入 https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=自己的&corpsecret=自己的。
HTTP Method:选择 GET。
Headers:添加 Content-Type,值为 application/json。
Body:无内容,空着就好 。
3、解析返回结果:
拖入一个 JSON Input 步骤,将 REST Client 的输出作为输入源。
在“行”路径中填入 $,获取整个 JSON 对象。
在字段中定义:
名称:tenant_access_token,路径:$.tenant_access_token。
名称:expire,路径:$.expire。
这样就能将 Token 提取为 Kettle 流中的字段。
4、获取如遇异常,方案拆解流程
顺利的话,获取到token很简单,但是或许可能会像我一样遇到 Java 环境(Pentaho Kettle 运行在 JVM 中)不信任企业微信 API 服务器(qyapi.weixin.qq.com)的 SSL 证书。
解决方法是将该服务器的证书添加到 Java 的信任库中。下面是具体的操作流程。
🔍第一步:获取企业微信 API 的 SSL 证书
这里需要获取的是 qyapi.weixin.qq.com 这个服务器本身的证书。
1.使用浏览器导出证书(推荐)
这是最简单的方法。用 Chrome 或 Edge 浏览器打开一个新的无痕窗口,访问这个地址:https://qyapi.weixin.qq.com。
-
点击地址栏左侧的“锁”图标 → “连接是安全的” → “证书有效”。
-
在弹出的证书窗口中,切换到“详细信息”标签页,点击“复制到文件”。
-
按照导出向导操作,选择“Base64 编码 X.509 (.CER)”格式,将证书保存到你方便找到的地方,比如
C:\certs\目录下,并命名为qyapi.cer。

605

被折叠的 条评论
为什么被折叠?



