steve xia

Node.js API 客戶端黃金標準

開發程式設計v1.0.0
作者:steve xia更新於 2026-05-11reliable-api-client@clawhub_danihe001/reliable-api-client
後端開發

據 AlphaMoat 統計,截至 2026-09,Node.js API 客戶端黃金標準 累計下載 891 次、獲 0 個星標,在全部 5,078 個 AI 技能中排名第 5,062 位,在「開發程式設計」分類(577 個)中排名第 577 位。

累計安裝
215
累計下載
891
星標
-
全站排名
#5,062
全站前 100% · 「開發程式設計」前 100%
平台累計安裝累計下載星標評論
ClawHub ↗22857--
SkillHub ↗215891-—

各平台的計數口徑不同,統計時間不一致。

這個技能是做什麼的

該技能介紹多 Endpoint、多金鑰輪詢、優先順序策略、連線池、退避重試與熔斷器等客戶端設計。實際行為仍需根據目標 API 和環境測試;文件描述不構成生產可靠性保證。

資料釋出於 2026-10-27

可以用來做什麼

  • 設計 API 客戶端的故障轉移邏輯
  • 整理限流、重試與熔斷策略

什麼時候用

  • 需要構建可切換上游端點的 Node.js 客戶端時
  • 需要梳理 API 請求失敗時的處理策略時

示例提示詞

以下是根據技能文件生成的示例,不代表實際執行結果。

為這個 API 客戶端設計端點故障轉移
說明重試、限流和熔斷如何配合

月度資料趨勢

累計下載891
2996179352026-03 · 累計下載 3432026-05 · 累計下載 5812026-06 · 累計下載 6392026-07 · 累計下載 7682026-08 · 累計下載 8242026-09 · 累計下載 89126-0326-09
星標-
0112026-03 · 星標 -2026-05 · 星標 -2026-06 · 星標 -2026-07 · 星標 -2026-08 · 星標 -2026-09 · 星標 -26-0326-09

2026-09 起統計方法調整:同名技能按作者分別統計,並覆蓋全部技能。圖中虛線為調整前的月份,與之後的資料不直接比較,也不計算跨越調整的增長。

月份累計下載環比星標
2026-09891—-
2026-08824+7.3%-
2026-07768+20.2%-
2026-06639+10.0%-
2026-05581—-
2026-03343—-

SKILL.md 原文

以下是作者釋出的原始檔案,按純文字顯示,本站未做修改或稽核;其中的連結不可點選,命令請核實後再執行。抓取於 2026-10-23。

2.5 KB · ClawHub v1.0.0
---
name: reliable-api-client
description: Node.js API 客户端黄金标准 v3.0 - 多Endpoint + 多Key轮询 + 限流 + 熔断器
homepage: https://github.com/tvvshow/openclaw-evomap
metadata:
  {
    "openclaw":
      {
        "emoji": "🌐",
        "requires": {},
展開全部(共 101 行)
        "install": [],
      },
  }
---

# Node.js API 客户端黄金标准 v3.0

整合多Endpoint + 多Key轮询 + 限流 + 连接池 + 指数退避重试 + 熔断器

## 新功能 (v3.0)

| 功能 | 说明 |
|------|------|
| **多Endpoint** | 支持多个上游地址,自动故障转移 |
| **Endpoint熔断** | 每个Endpoint独立熔断器 |
| **优先级策略** | 支持 priority/least-used/round-robin |
| **延迟监控** | 跟踪每个Endpoint的响应时间 |

## 使用方法

```javascript
const ReliableAPIClient = require('./reliable-api-client');

const client = new ReliableAPIClient({
  // 多 Endpoint 支持
  endpoints: [
    { url: 'https://api.example.com', priority: 10 },  // 高优先级
    { url: 'https://backup.example.com', priority: 5 }
  ],
  endpointStrategy: 'priority',  // priority | round-robin | least-used
  endpointCooldown: 60000,      // 1分钟冷却
  
  // 多 Key 支持
  apiKeys: ['key1', 'key2', 'key3'],
  keyStrategy: 'round-robin',
  
  // 限流
  maxQPS: 10,
  
  // 重试
  maxRetries: 3,
  
  // 熔断
  circuitThreshold: 5,
  circuitReset: 30000,
  
  // 连接池
  poolSize: 20
});

// 添加更多 Endpoint
client.addEndpoint('https://new-endpoint.com', priority: 8);
client.addAPIKey('new-key');

// 请求
const data = await client.get('/users');
const result = await client.post('/orders', { item: 'test' });

// 统计
console.log('Endpoints:', client.getEndpointStats());
console.log('Keys:', client.getKeyStats());
console.log('Circuit:', client.getCircuitBreakerStatus(url));
```

## 架构

```
请求 → [限流器] → [Endpoint选择] → [Key选择] → [熔断器] → 发送
                                      ↓
                              [指数退避重试]
                                      ↓
                              [失败 → 切换Endpoint/Key]
```

## 故障转移逻辑

1. 优先选择健康的 Endpoint
2. 按策略选择(priority/least-used/round-robin)
3. 请求失败 → 标记 Endpoint 错误
4. 连续失败 → 熔断器打开
5. 熔断后 → 自动切换到下一个 Endpoint
6. 冷却后 → Endpoint 恢复健康

## 文件

- `reliable-api-client.js` - 主代码

## 相关文档

- `EVOMAP_STANDARD.md` - 胶囊发布规范

「開發程式設計」分類下的熱門技能

資料月份:2026-09 · 下載/星標/安裝數聚合自公開技能註冊庫(ClawHub、SkillHub),按月更新。口徑說明見資料方法。