跳转到内容
欢迎抵达彼岸 彼岸花开 此处谁在 -彼岸论坛

[程序员] 第一次使用 bun 开发: 企业微信会话内容存档客户端

Featured Replies

发表于

主要利用 bun:ffi 的功能,将以前的 golang 逻辑迁移为新的统一的 ts 代码,增加类型安全,代码一个仓库里方便维护。 目前包里带的 .so 只能在 glibc, amd64,linux 下执行,没测试过 windows 。

代码内测试用例

make run-bun
# 执行测试,会输出 10 条消息 - 注意 IP 白名单,可以增加 WWF_PROXY 环境变量
WWF_CORP_ID=ID WWF_CORP_SECRET=SECRET bun test ./src/wecom/archive/bun/WeWorkFinanceClient.bun.test.ts  

测试代码

if (process.env.WWF_PRIVATE_KEY_FILE) {
  privateKey = await fs.readFile(process.env.WWF_PRIVATE_KEY_FILE, 'utf-8');
}

const client = createWeWorkFinanceClientFromEnv({
  corpId: process.env.WWF_CORP_ID,
  corpSecret: process.env.WWF_CORP_SECRET,
  privateKey,
});
// the original data
const data = client.getChatData({ limit: 10 });
console.log(data);

// the decrypted data
if (privateKey) {
  console.log(client.getMessage({ limit: 10 }));
}

// get file
client.getMediaData({ fileId: '' });