我有一個用戶身份驗證API,它返回包含一些數據的對象,包括狀態碼,例如。 200.即使證書不正確,我也會發送200狀態消息,但響應對象的狀態字段的狀態爲401,並且消息「Incorrect Credentials」。因此,我的問題是,哪種響應是正確的?即使證書不正確,我發送200狀態消息,然後在響應對象內,我必須再次檢查憑據是否正確或第二,如果憑據不正確,我發送狀態401與響應對象?用戶身份驗證響應
Q
用戶身份驗證響應
0
A
回答
0
我認爲最好將它返回到HTTP標頭中。通過這種方式,客戶可以更輕鬆地知道錯誤發生了。最後它更直接。
0
最好的方法是有條件地返回標題中的http狀態和代碼。通過這種方式,用戶可以使用本地方法對響應做出反應。如果服務中出現意外錯誤,並且無法形成漂亮的響應對象,則用戶仍可以處理它,因爲響應將具有適當的HTTP狀態代碼。如果用戶總是期望你的API返回一個對象,那麼他/她在這種情況下會遇到麻煩。當然,你可以告訴他們考慮到這一點,但是用戶將不得不實施額外的邏輯來處理兩種響應。
但是:
你可以做一些像我一樣:讓用戶選擇!
我在URL中放置一個變量,告訴服務是否返回帶有正確代碼的http響應。 的URL看起來是這樣的:
/some_path/{real_http_code}/some_path_or_data
凡{real_http_code}
是真/假-text。如果這是真的,我們的服務知道用適當的HTTP狀態碼返回響應。如果爲false,服務將始終返回200 OK -response,並且如果出現問題,用戶必須檢查響應。 因此,URL可能看起來像這樣:
/some_path/true/some_path_or_data
跌宕起伏:
+爲用戶提供自由選擇
- 附加邏輯必須落實到服務
相關問題
- 1. 使用DotNetOpenAuth存儲用戶身份驗證響應
- 2. 用戶身份驗證
- 3. 用戶身份驗證
- 4. Django用戶身份驗證
- 5. Python API和響應 - 身份驗證
- 6. WCF身份驗證NT質詢響應
- 7. URLSession |身份驗證質詢響應| NTLM
- 8. 來自JSON響應的身份驗證用戶登錄-React Native
- 9. Owin身份令牌身份驗證令牌端點響應404
- 10. Jetty Truststore身份驗證與SSL客戶端身份驗證
- 11. Web Api客戶端身份驗證(非用戶身份驗證)最佳實踐
- 12. WCF - 傳輸身份驗證 - 獲取身份驗證用戶的憑證
- 13. iOS應用程序如何接收SAML身份驗證響應?
- 14. 使用Windows身份驗證和匿名身份驗證獲取用戶名
- 15. 使用REST的用戶身份驗證
- 16. 用戶身份驗證(使用sha1)
- 17. 用戶身份驗證不起作用
- 18. PHP:使用HTTP摘要式身份驗證響應以使用LDAP進行身份驗證
- 19. 自定義身份驗證 - 用戶登錄但未經過身份驗證
- 20. 用戶通過身份驗證後觸發事件 - Windows身份驗證
- 21. 螳螂用戶身份驗證無法在Dokuwiki中進行身份驗證
- 22. ASP.NET應用程序未使用Windows身份驗證進行身份驗證
- 23. LDAP添加用戶(身份驗證)
- 24. Laravel 5內置用戶身份驗證
- 25. 用戶身份驗證失敗
- 26. python中的Firebase用戶身份驗證
- 27. 流明中的用戶身份驗證
- 28. CakePHP與OpenID和用戶身份驗證
- 29. Android Django用戶身份驗證
- 30. Django和Google Apps用戶身份驗證
請參閱http://stackoverflow.com/questions/1618733/signalling-authentication-failure-in-a-restful-api – Lovababu
上面的鏈接中沒有用於身份驗證的API,但是我有和我不確定哪個是正確的發送回覆的方式。 –
所以我的問題是,哪個迴應是正確的?這不是你的問題。 – Lovababu