每月5万次额度不够用?飞书API过度调用问题终于解决了

最近有个朋友找到我,说他在飞书开发者后台发现了一个严重问题:/open-apis/bot/v3/info 这个接口每分钟被调用好几百次,每个月 5 万次的免费额度眼看就要用光了!

飞书API调用量监控

问题是怎么发现的

朋友在飞书开发者后台的「API 调用统计」里看到,bot/v3/info 这个接口的调用量异常高:

指标数值
日调用次数43200+ 次
每分钟调用~300 次
月消耗估算接近 5 万次上限

他都懵了:我就一个机器人,怎么调用这么频繁?

问题根因分析

我帮他排查了 OpenClaw 的飞书扩展代码,发现问题出在两个地方:

1. 状态检查触发 API 调用

每次查询机器人状态时,都会调用 probeFeishu() 函数去请求飞书的 bot info 接口。这个函数在以下场景会被调用:

  • 启动机器人时获取 OpenID
  • 外部系统查询状态时
  • WebSocket 断线重连时

2. 缺乏缓存机制

原来的代码是「每次调用都发请求」,没有任何缓存。哪怕连续查询 10 次状态,就会产生 10 次 API 调用。

解决方案:5分钟缓存机制

我给 probe.ts 加了一个简单的缓存层:

// 缓存配置:5分钟内不重复调用 API
const CACHE_TTL_MS = 5 * 60 * 1000;
const botInfoCache = new Map();

核心逻辑很简单:

  • 首次调用 → 请求飞书 API → 缓存结果
  • 5 分钟内再次调用 → 直接返回缓存(不发起新请求)
  • 失败结果也缓存 → 避免失败时重复请求

修改后的效果

对比项修改前修改后
每次状态查询调用 API直接返回缓存
失败重试无限重试缓存 5 分钟
月消耗估算50000+ 次~300 次

简单算一笔账:每 5 分钟最多调用 1 次,一天 24 小时 = 288 次/月,一年才 3500 次左右。原来的 5 万/月额度,根本用不完!

适用场景

这个方案特别适合以下情况:

  • 使用 OpenClaw 飞书扩展的用户
  • 自己开发飞书机器人,频繁调用 bot info 接口
  • API 额度告急,想优化调用次数

总结

飞书 API 过度调用的问题,本质上是缺乏缓存机制导致的。解决方案也很简单:给接口调用加个缓存。

有时候,最简单的优化反而是最有效的。

暂无介绍....

延伸阅读:

每月5万次额度不够用?飞书API过度调用问题终于解决了

最近有个朋友找到我,说他在飞书开发者后台发现了一个严重问题:/open-apis/bot/v3/info 这个接口每分钟...

itadol5j
2026年3月2日
一周AI大事件 2026年2月第4周

一周AI大事件|2026年2月第4周又到了每周一次的 AI 资讯汇总时间!过去一周 AI 领域发生了哪些大事?让我们一起...

itadol5j
2026年3月2日
OpenClaw 配合Ollama本地部署,超级简单一看就会!!

OpenClaw 配合 Ollama 本地部署,超级简单一看就会!!还在为调用云端大模型花销大而烦恼吗?还在担心数据隐私...

itadol5j
2026年3月2日
90% 的人都在错误使用 Claude Code:Anthropic 官方最佳实践全解析

90% 的人都在错误使用 Claude Code:Anthropic 官方最佳实践全解析Claude Code 是 An...

itadol5j
2026年3月2日
OpenClaw x Polymarket:手把手教你搭建自动交易机器人

什么是 Polymarket?Polymarket 是全球最大的预测市场,用户可以交易各种事件的发生概率——从体育比赛到...

itadol5j
2026年3月2日