我有一个用于登录AngularJS应用程序的API。它只是发布到登录URL,然后如果进展顺利,则返回一个会话对象。如果它出错了,那么正确的HTTP代码应该是什么?
如果你认为401会是最好的,那就会遇到另一个问题:我有一个拦截器来捕获401并显示登录模式作为结果。这个想法是401只会在会话过期时(或者用户的某些内容发生变化)发生,并且用户应该重新进行身份验证。
什么是最好的解决方案?
答案 0 :(得分:1)
只有当数据真的处于错误状态时,API才会返回400:Bad Request。
我将返回422:不可处理的实体
以下是两篇文章:
http://www.bennadel.com/blog/2434-http-status-codes-for-invalid-data-400-vs-422.htm screenshoot