2016-03-25 26 views
1

假設我有一個RESTful驗證端點註銷後返回。HTTP狀態,試圖不被記錄在

http://example.com/api/v1/auth

  • 一個POST要求用電子郵件地址和密碼可用於登錄請求被反駁對於正確登錄的HTTP 200響應或不正確的響應403。
  • A DELETE請求允許註銷。

很明顯,成功註銷後,我應該返回HTTP 200.如果用戶嘗試註銷而不登錄,應該返回哪個HTTP響應代碼?

+0

400級別可能是有道理的。 –

回答

3

很明顯,您應該返回狀態200成功註銷?一點也不。如果您沒有返回具有該狀態的響應,則204或205會更合適(205 =「無內容,刷新」),因爲沒有要返回的內容,客戶端應該可以刷新其視圖。

如果用戶未登錄:請考慮客戶端會考慮什麼。客戶端不知道用戶沒有登錄。或者客戶端不確定用戶是否沒有登錄,並退出以防萬一。通話結束後,用戶已註銷。給予與以前登錄的用戶不同的地位有什麼作用?即使客戶正確地檢測到了這種狀態,客戶可以做些什麼呢?

我會給出完全相同的迴應。不要將其視爲「我已註銷」,請將其視爲「我未登錄」。如果你真的想要報告它,返回狀態200與不同的內容爲已登錄的用戶和未登錄的用戶。