正文

HTTP协议--Status Code and Reason Phrase2009-01-08 10:13:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/lym51/40223.html

分享到:

老忘记这些,就把它给摘了下来 6.1 状态行 (Status-Line)响应消息的第一行是状态行(stauts-Line),由协议版本以及数字状态码和相关的文本短语组成,各部分间用空格符隔开,除了最后的回车或换行外,中间不允许有回车换行.    Status-Line = HTTP-Version SP Status-Code SP Reason-Phrase CRLF 6.1.1状态码与原因短语 (Status Code and Reason Phrase)状态码是试图理解和满足请求的三位数字的整数码,这些码的完整定义在第十章。原因短语(Reason-Phrase)是为了给出的关于状态码的文本描述。状态码用于控制条件,而原因短语(Reason-Phrase)是让用户便于阅读。客户端不需要检查和显示原因短语。 状态码的第一位数字定义响应类型。后两位数字没有任何分类角色。第一位数字有五种值: -1xx: 报告的         - 接收到请求,继续进程. -2xx 成功           - 步骤成功接收,被理解,并被接受 -3xx 重发           - 为了完成请求,必须采取进一步措施. -4xx 客户端出错     - 请求包括错的顺序或不能完成. -5xx 服务器出错     - 服务器无法完成显然有效的请求. 下面列举了为HTTP/1.1定义的态码值,和对应的原因短语(Reason-Phrase)的例子。原因短语在这里例举只是建议性的----它们也许被一个局部的等价体代替而不会影响此协议的语义。  Status-Code =         "100" ; 10.1.1节: 继续                |"101"   ; 10.1.2节: 转换协议                 |"200"   ; 10.2.1节: OK       |"201"   ; 10.2.2节:   创建                  |"202"   ; 10.2.3节:   接受               |"203"   ; 10.2.4节: 非权威信息            |"204"   ;   10.2.5节: 无内容                |"205"   ;   10.2.6节: 重置内容               |"206"   ;   10.2.7节: 局部内容               |"300"   ;   10.3.1节: 多样选择               |"301"   ;   10.3.2节: 永久移动              |"302"   ;   10.3.3节: 创建                   |"303"   ;   10.3.4节: 观察别的部分                   |"304"   ;   10.3.5节: 只读                           |"305"   ;   10.3.6节: 用户代理                       |"307"   ;   10.3.8节   临时重发                      |"400"   ;   10.4.1节: 坏请求                         |"401"   ;   10.4.2节: 未授权的                     |"402"   ;   10.4.3节: 必要的支付                   |"403"   ;   10.4.4节: 禁用                         |"404"   ;   10.4.5节: 没找到                        |"405"   ;   10.4.6节: 不允许的方式                 |"406"   ;   10.4.7节: 不接受                        |"407"   ;   10.4.8节: 需要代理验证       |"408"   ;   10.4.9节: 请求超时                     |"409"   ;   10.4.10节; 冲突                         |"410"   ;   10.4.11节: 停止                         |"411"   ;   10.4.12节: 需要的长度                   |"412"   ; 10.4.13节; 预处理失败                   |"413"   ;   10.4.14节: 请求实体太大             |"414"   ;   10.4.15节; 请求-URI太大             |"415"   ;   10.4.16节: 不支持的媒体类型          |"416"   ; 10.4.17节: 请求的范围不满足         |"417"   ;   10.4.18节: 期望失败                  |"500"   ;   10.5.1节:   服务器内部错误              |"501"   ;   10.5.2节:   不能实现                    |"502"   ;   10.5.3节:   坏网关                      |"503"   ;   10.5.4节:   服务不能实现                |"504"   ;   10.5.5节:   网关超时                    |"505"   ;   10.5.6节:   HTTP版本不支持         |扩展码    extension-code =3DIGIT Reason-Phrase = *<TEXT,excluding CR,LF> HTTP状态码是可扩展的。HTTP应用程序不需要理解所有已注册状态码的含义,尽管那样的理解显而易见是很合算的。但是,应用程序必须了解由第一位数字指定的状态码的类型,任何未被识别的响应应被看作是该类型的x00状态,有一个例外就是未被识别的响应不能缓存。例如,如果客户端收到一个未被识别的状态码431,则可以安全的假定请求有错,并且它会对待此响应就像它接收了一个状态码是400的响应。在这种情况下,用户代理(user agent)应当把实体和响应一起提交给用户,因为实体很可能包括人可读的关于解释不正常状态的信息。

阅读(8831) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册