Skip to content
ADP
API Design PrincipleBETA

[ADP-202] Not Found v.s. Forbidden

指導

  • 當請求的資源無法找到時,伺服器應該(SHOULD)返回 404: Not Found 狀態碼。這表示伺服器未找到與請求 URI 匹配的任何內容。

  • 然而,如果用戶沒有權限讀取父資源信息,伺服器應該(SHOULD)返回 403: Forbidden,即使資源不存在。這是為了確保用戶意識到他們缺乏訪問權限,而不僅僅是表明資源不存在。

範例

  • 嘗試存取 api.server.dev/group/${group-id}/users/${user-id} 可能會因為請求授權缺乏存取 /group/${group-id}/users 的權限而導致 403 回應。

參考