今天共同奋力用在删除操作550错误时,用户不必起初看着我不好,因为正如我所知道的,这有点儿错误看起来像一个客户端(又名4XX)错误给我的权限而不是一台服务器(又名5XX)。
当在描述来看,它表明正是它被正确使用。 取而代之的是401错误,我用了一些前“问题”的。
401错误的问题是:如果用户A登录,并尝试这样做,返回401它同时也意味着,你必须“登陆”,因为你没有有效的凭据访问HTTP资源的操作。 这种方法的问题是,如果用户已登录,服务器就知道,他不具有的权限,在这种情况下,看起来像一个550是比较合适的,但并不完全看向我,一个550错误应在此使用场景。
问题是:什么是550错误的正确使用(如果有的话),在基于网络的应用。 我知道这是在FTP和SMTP中继的使用用途。 如果一些用户登录,发送这是不允许一个的动作的请求时,应返回的错误?
谢谢!
5XX错误是服务器错误。 如果用户没有权限应该是4XX错误。
但是你是正确的。 401错误意味着用户必须登录才能访问。 即认证是必需的。
您正在寻找的错误是403 FORBIDDEN
这已超过用户是否因为其在或不记录任何含糊。 它明确。
从HTTP错误代码的维基( http://en.wikipedia.org/wiki/List_of_HTTP_status_codes )(重点煤矿):
403禁止
请求是一个有效的请求,但服务器拒绝回应。[2] 不同于401未授权响应,认证会使没有区别。[2] 在这里需要认证服务器,这通常意味着所提供的证书被成功地认证,但该证书仍然不授予客户端权限访问该资源(如可识别的用户试图访问受限制的内容)。
再次,根据上述维基,有作为550错误没有这样的事情。 我想,你可以选择自己实现它,但可能没有必要说实话。 然而,应该在标准定义的服务器错误。
文章来源: Proper use of HTTP Error Codes. 550 - Why is it 5xx instead of 4xx?