透過掌握錯誤處理模式(包括異常、Result 類型、重試邏輯和斷路器)來建構更具韌性的應用程式,涵蓋 Python、TypeScript、Rust 和 Go。
下载技能 ZIP
在 Claude 中上传
前往 设置 → 功能 → 技能 → 上传技能
开启并开始使用
测试它
正在使用“error-handling-patterns”。 呼叫外部 API 時如何處理錯誤?
预期结果:
對於外部 API 呼叫,實現多層錯誤處理:(1) 自定義異常層次結構以處理不同失敗類型,(2) 對暫時性錯誤使用指數退機制重試,(3) 斷路器防止連鎖故障,(4) 帶有後備資料的優雅降級。範例方法:建立自定義異常(NetworkError、TimeoutError、RateLimitError),用重試裝飾器包裝 API 呼叫(3 次嘗試和指數退),使用斷路器追蹤失敗率,在 API 不可用時提供快取後備。
正在使用“error-handling-patterns”。 何時應該使用 Result 類型而不是異常?
预期结果:
對預期會失敗的情況使用 Result 類型(驗證錯誤、找不到錯誤、商業邏輯錯誤),此時呼叫者應該明確處理成功和失敗兩種情況。對真正的異常情況使用異常(空指標、記憶體不足、未預期的執行時錯誤)。Result 類型在類型系統中使錯誤處理變得明確,強制呼叫者考慮失敗情況。在 TypeScript 中,Result<T, E> = { ok: true, value: T } | { ok: false, error: E }。在 Rust 中,? 運算子和 Result<T, E> 類型提供內建支援。這種方法改善程式碼可讀性並減少未預期的執行時錯誤。
安全审计
安全This skill is a documentation and educational resource about error handling patterns. The static scanner flagged 49 potential issues, but after evaluation all findings are FALSE POSITIVES. The detected patterns (backtick syntax examples, HTTP library examples, error categories) are educational code snippets in markdown documentation, not executable malicious code. No security concerns identified.
质量评分
你能构建什么
提升應用程式可靠性
為新現功能添加穩健的錯誤處理,包含適當的異常層次結構和有意義的錯誤訊息。
建構容錯系統
為分散式系統和微服務實現重試邏輯、斷路器和優雅降級。
學習跨語言模式
了解 Python、TypeScript、Rust 和 Go 的錯誤處理方法,為每種情況選擇最佳方案。
试试这些提示
幫我為從資料庫取得使用者資料的函式實現適當的錯誤處理。我想要建立自定義異常類別並適當處理不同的錯誤情境。
展示如何在 TypeScript 中實現 Result 類型模式來解析 JSON 資料。包含適當的錯誤類型和可串聯的錯誤處理。
建立一個 Python 裝飾器,為網路呼叫實現具有指數退機制的重試邏輯。處理不同類型的異常並包含可設定的嘗試次數。
在 Python 中實現斷路器模式,以防止呼叫外部 API 時產生連鎖故障。包含關閉、開啟和半開啟狀態。
最佳实践
- 透過早期驗證輸入并提供有意義且包含背景資訊的錯誤訊息來快速失敗
- 保留錯誤背景資訊,包括堆疊追蹤、時間戳和相關元資料
- 在能夠有意義回應錯誤的適當層級處理錯誤
- 適當記錄錯誤 - 記錄未預期的錯誤,而非預期的驗證失敗
避免
- 使用過於寬鬆的通用 Exception 處理器,會隱藏錯誤
- 空的 catch 區塊靜默吞沒錯誤而不記錄或處理
- 返回錯誤碼而非使用適當的異常或 Result 類型
- 因未適當處理 promise 拒絕而忽略異步錯誤