401、404等代码的意思( 二 )


如果这不是一个GET 或者 HEAD 请求,那么浏览器禁止自动进行重定向,除非得到用户的确认,因为请求的条件可能因此发生变化 。
【401、404等代码的意思】请求错误
这类的状态码代表了客户端看起来可能发生了错误,妨碍了服务器的处理 。除非响应的是一个 HEAD 请求,否则服务器就应该返回一个解释当前错误状况的实体,以及这是临时的还是永久性的状况 。这些状态码适用于任何请求方法 。浏览器应当向用户显示任何包含在此类错误响应中的实体内容 。
如果错误发生时客户端正在传送数据,那么使用TCP的服务器实现应当仔细确保在关闭客户端与服务器之间的连接之前,客户端已经收到了包含错误信息的数据包 。如果客户端在收到错误信息后继续向服务器发送数据,服务器的TCP栈将向客户端发送一个重置数据包,以清除该客户端所有还未识别的输入缓冲,以免这些数据被服务器上的应用程序读取并干扰后者 。
400 Bad Request(错误请求)
1、语义有误,当前请求无法被服务器理解 。除非进行修改,否则客户端不应该重复提交这个请求 。
2、请求参数有误 。
401 Unauthorized(未经授权)
当前请求需要用户验证 。该响应必须包含一个适用于被请求资源的 WWW-Authenticate 信息头用以询问用户信息 。客户端可以重复提交一个包含恰当的 Authorization 头信息的请求 。如果当前请求已经包含了 Authorization 证书,那么401响应代表着服务器验证已经拒绝了那些证书 。如果401响应包含了与前一个响应相同的身份验证询问,且浏览器已经至少尝试了一次验证,那么浏览器应当向用户展示响应中包含的实体信息,因为这个实体信息中可能包含了相关诊断信息 。参见RFC 2617 。
402 Payment Required(要求付款)
该状态码是为了将来可能的需求而预留的 。
403 Forbidden(被禁止)
服务器已经理解请求,但是拒绝执行它 。与401响应不同的是,身份验证并不能提供任何帮助,而且这个请求也不应该被重复提交 。如果这不是一个 HEAD 请求,而且服务器希望能够讲清楚为何请求不能被执行,那么就应该在实体内描述拒绝的原因 。当然服务器也可以返回一个404响应,假如它不希望让客户端获得任何信息 。
404 Not Found(找不到)
请求失败,请求所希望得到的资源未被在服务器上发现 。没有信息能够告诉用户这个状况到底是暂时的还是永久的 。假如服务器知道情况的话,应当使用410状态码来告知旧资源因为某些内部的配置机制问题,已经永久的不可用,而且没有任何可以跳转的地址 。404这个状态码被广泛应用于当服务器不想揭示到底为何请求被拒绝或者没有其他适合的响应可用的情况下 。出现这个错误的最有可能的原因是服务器端没有这个页面 。
405 Method Not Allowed(不允许的方法)
请求行中指定的请求方法不能被用于请求相应的资源 。该响应必须返回一个Allow 头信息用以表示出当前资源能够接受的请求方法的列表 。
鉴于 PUT,DELETE 方法会对服务器上的资源进行写操作,因而绝大部分的网页服务器都不支持或者在默认配置下不允许上述请求方法,对于此类请求均会返回405错误 。
406 Not Acceptable(不可接受)
请求的资源的内容特性无法满足请求头中的条件,因而无法生成响应实体 。
除非这是一个 HEAD 请求,否则该响应就应当返回一个包含可以让用户或者浏览器从中选择最合适的实体特性以及地址列表的实体 。实体的格式由 Content-Type 头中定义的媒体类型决定 。浏览器可以根据格式及自身能力自行作出最佳选择 。但是,规范中并没有定义任何作出此类自动选择的标准 。


以上关于本文的内容,仅作参考!温馨提示:如遇专业性较强的问题(如:疾病、健康、理财等),还请咨询专业人士给予相关指导!

「辽宁龙网」www.liaoninglong.com小编还为您精选了以下内容,希望对您有所帮助: