2011-06-09 76 views

回答

2

该标准似乎没有对实际代码作出响应,只是两个长度必须匹配,并且HTTP/1.1代理必须通知用户。

我只会使用400 Bad Request代码,因为毕竟问题是什么(违反标准的请求),而其他400系列代码似乎没有足够接近的匹配。 x00代码还定义了状态类,因此可用于通用代码。

请记住,代码是可扩展的,你总是可以定义自己和代理不承认它需要把它当作一个x00变种反正(RFC2616的6.1.1节):

HTTP状态码是可扩展的。 HTTP应用程序并不需要了解所有已注册的状态代码的含义,尽管这样的理解显然是可取的。但是,应用程序必须理解任何状态码的类,如第一位数所示,并将任何未识别的响应视为等同于该类的x00状态码,但不得缓存无法识别的响应。例如,如果客户端收到一个无法识别的状态码431,则可以安全地假定其请求有问题,并将响应视为已收到400状态码。在这种情况下,用户代理应该向用户提供与响应一起返回的实体,因为该实体可能包含人类可读的信息,这些信息将解释异常状态。

+0

非常感谢,我想我现在坚持400。 – Erds 2011-06-10 15:47:55