跳轉到主要內容

錯誤響應約定

  • 成功響應的 code 為數字 0
  • 錯誤響應的 code 可能是整數或字符串;客戶端應先使用 String(code) 歸一化後再比較
  • 不要根據 message 文本編寫判斷邏輯;message 用於說明錯誤,可能隨具體場景變化
  • HTTP 狀態碼表示請求層面的結果,code 表示具體業務原因,客戶端應同時檢查兩者

HTTP API

HTTP 錯誤響應至少包含 code 和 message,部分接口還會返回 error 或 data:
財務與基本面接口通常返回以下結構:

WebSocket 建連失敗

在 WebSocket 升級完成前發生的鑒權錯誤是普通 HTTP 錯誤響應,此時連接尚未建立,客戶端不會收到 WebSocket 消息。

WebSocket 建連後錯誤

連接建立後的訂閱或消息錯誤通過 WebSocket 消息返回,cmd 表示觸發錯誤的命令:

錯誤碼速查表

認證錯誤(1xxx)

參數錯誤(2xxx)

HTTP 請求中的代碼歧義返回字符串 AMBIGUOUS_SYMBOL;WebSocket 訂閱中的代碼歧義當前返回數字 2003。兩者都應根據響應中的 available_types 補充 type。

訪問限制與配額錯誤(3xxx)

WebSocket 頻道權限錯誤(4xxx)

當前公開 WebSocket 連接使用以下 4xxx 錯誤: 非法 JSON 和未知命令當前均返回 cmd="error"、code=2001。4001–4004 不屬於當前公開接口的返回契約,因此不應依賴這些代碼編寫客戶端邏輯。

服務錯誤(5xxx)

5004 的 WebSocket 訂閱響應中,data 可能包含以下字段:
  • symbols:已經訂閱成功的代碼,不要重複訂閱
  • failed_symbols:本次未成功的全部代碼
  • retryable_symbols:可以稍後重試的代碼子集
  • retryable:是否存在可重試代碼

字符串錯誤碼

財務與基本面接口錯誤

以下五位錯誤碼適用於標準財務與基本面接口;個股新聞接口可能使用不同的錯誤映射,應以其實際響應為準。

錯誤處理示例

JavaScript

Python