簡體   English   中英

當端點被功能標志/功能切換禁用時,您使用什么 HTTP 狀態代碼?

[英]What HTTP status code do you use when endpoint is disabled by feature-flag / feature-toggle?

我一直在使用503 Service Unavailable或停機維護。

然而,一些 http 客戶端庫,即 axios 將 503 視為可重試錯誤。

如果響應是由於高負載而產生的,則重試是有意義的,但 503 也適合功能切換的情況。

關於人們使用的其他代碼的任何建議?

狀態代碼是屬於“通過網絡傳輸文檔”域的元數據。 狀態代碼的共享語義允許通用 HTTP 感知組件智能地運行。

所以你應該做的是考慮 HTTP 語義。

例如,如果您的服務器無權訪問由請求的目標 uri 標識的資源的當前表示,那么您應該發出404 Not Found響應。 如果請求被禁止,則403 Forbidden 或者451 Unavailable for Legal Reasons當這是預期含義時。

換句話說:這取決於。

但它不依賴的是“功能標志”; 這是一個實現細節。 “統一接口”是一種外觀,它隱藏了從一個實現到另一個實現不同的技術細節。 從外面看,你的 API 給人一種你的機器只是另一個無聊的 Web 服務器的錯覺。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM