假設我們正在構建一個'忘記密碼'頁面,用戶需要輸入其電子郵件ID。如果電子郵件ID不符合我們數據庫中的任何記錄怎麼辦?我們是否仍然以200迴應?在資源不可用時渲染的理想http響應代碼是什麼?
1
A
回答
-1
是的,它仍然會迴應200 OK。
出於安全原因最好不要做信息電子郵件不存在於數據庫中。最好只返回信息不正確的憑據。如果電子郵件帳戶存在或不存在,攻擊者就沒有信息。
在API的情況下會出現不同的情況。在這種情況下將是良好的回報響應401未授權與消息「Incorect憑證」更好地捕捉客戶端應用程序。
0
因此,在探討了更多關於此之後,我覺得我仍然應該以200響應,因爲請求和請求參數沒有任何問題。它仍然是一個有效的請求。
也可能值得注意的是,當用戶試圖訪問不屬於它的資源時,用401響應是完全有意義的。
此('密碼重置'或'檢查用戶名可用性')不是401場景。 200看起來不錯。
相關問題
- 1. REST HTTP響應代碼當第三方資源變得不可行時
- 2. JavaScript中3D渲染的最佳在線資源是什麼?
- 3. PUT時渲染資源
- 4. 對於已知不存在的資源,最適合的HTTP響應代碼是什麼?
- 5. 渲染使用Grails空HTTP響應3
- 6. HTTP響應代碼爲403而不是200,爲什麼?
- 7. 我想查看Java代碼中HTTP請求產生的響應的「源代碼」
- 8. 爲什麼HTTP響應代碼在PHP $ _SERVER變量中不可用?
- 9. 當REST資源不存在時,什麼是正確的HTTP狀態碼?
- 10. 什麼是學習MASM代碼(不是HLA)的好資源?
- 11. ActiveRecord :: DeleteRestrictionError的正確HTTP響應代碼是什麼
- 12. 什麼是面板3中的HTTP響應代碼變體Drupal
- 13. jqplot使用dateAxisRenderer行不渲染,有什麼想法爲什麼?
- 14. 什麼HTTP響應代碼時ADFS終端上的瀏覽器
- 15. 什麼字體瀏覽scala源代碼和渲染<- and =>
- 16. MATHML不渲染/讀/響應
- 17. 我想使用資源! (Xamarin.Forms的自定義渲染器)
- 18. Grails資源渲染資源進行處理[推遲]警告?
- 19. Cohttp - 在不同的HTTP響應代碼
- 20. HTTP響應。你怎麼知道響應是否通過代理?
- 21. 想不通什麼是錯的代碼
- 22. 什麼是正確的HTTP狀態代碼來響應與OneToMany資源創建操作
- 23. 什麼HTTP響應代碼應該用於OPTION請求?
- 24. 什麼時候不用開源代碼?
- 25. 爲什麼我的代碼不響應?
- 26. 渲染到設備上下文時的資源管理(CDC/HDC)
- 27. 角JS:是什麼$ http和$資源
- 28. [REST]在資源不存在時建模子資源響應
- 29. 失敗的HTTP刪除操作的HTTP響應代碼是什麼?
- 30. symfony代碼更新不是渲染
實際上我並沒有完全讓你滿意,你的要求是什麼?如果你想用200做出迴應,那麼就這樣做,我們也可以顯示一些自定義信息。這取決於那些要求。 – pedram
我不會告訴他們任何事情,如果你有人可以猜測電子郵件地址,並且當他沒有得到錯誤響應時,他有兩部分密鑰的一部分,另一部分是密碼 – 3dd