Web开发-各状态码的意思
常见的HTTP 1.1状态码以及它们对应的状态信息和含义
100 Continue 初始的请求已经接受,客户应当继续发送请求的其余部分。(HTTP 1.1新)
101 Switching Protocols 服务器将遵从客户的请求转换到另外⼀种协议(HTTP 1.1新)
200 OK ⼀切正常,对GET和POST请求的应答⽂档跟在后⾯。如果不⽤setStatus设置状态代码,Servlet默认使⽤202状态代码。
201 Created 服务器已经创建了⽂档,Location头给出了它的URL。
202 Accepted 已经接受请求,但处理尚未完成。
203 Non-Authoritative Information ⽂档已经正常地返回,但⼀些应答头可能不正确,因为使⽤的是⽂档的拷贝(HTTP 1.1新)。
204 No Content 没有新⽂档,浏览器应该继续显⽰原来的⽂档。如果⽤户定期地刷新页⾯,⽽Servlet可以确定⽤户⽂档⾜够新,这个状态代码是很有⽤的。
205 Reset Content 没有新的内容,但浏览器应该重置它所显⽰的内容。⽤来强制浏览器清除表单输⼊内容(HTTP 1.1新)。
浏览web是什么意思
206 Partial Content 客户发送了⼀个带有Range头的GET请求,服务器完成了它(HTTP 1.1新)。
300 Multiple Choices 客户请求的⽂档可以在多个位置到,这些位置已经在返回的⽂档内列出。如果服务器要提出优先选择,则应该在Location应答头指明。
301 Moved Permanently 客户请求的⽂档在其他地⽅,新的URL在Location头中给出,浏览器应该⾃动地访问新的URL。
302 Found 类似于301,但新的URL应该被视为临时性的替代,⽽不是永久性的。注意,在HTTP1.0中对应的状态信息是“Moved Temporatily”,⽽HttpServletResponse中相应的常量是SC_MOVED_TEMPORARILY,⽽不是SC_FOUND。
出现该状态代码时,浏览器能够⾃动访问新的URL,因此它是⼀个很有⽤的状态代码。为此,Servlet提供了⼀个专⽤的⽅法,即sendRedirect。使⽤response.sendRedirect(url)⽐使⽤response.setStatus(response.SC_MOVED_TEMPORARILY)和response.setHeader("Location",url)更好。这是因为:
⾸先,代码更加简洁。
第⼆,使⽤sendRedirect,Servlet会⾃动构造⼀个包含新链接的页⾯(⽤于那些不能⾃动重定向的⽼式浏览器)。
最后,sendRedirect能够处理相对URL,⾃动把它们转换成绝对URL。
严格地说,我们只能假定只有当原来的请求是GET时浏览器才会⾃动重定向。请参见307。
303 See Other 类似于301/302,不同之处在于,如果原来的请求是POST,Location头指定的重定向⽬标⽂档应该通过GET提取(HTTP 1.1新)。
304 Not Modified 客户端有缓冲的⽂档并发出了⼀个条件性的请求(⼀般是提供If-Modified-Since头表⽰客户只想⽐指定⽇期更新的⽂档)。服务器告诉客户,原来缓冲的⽂档还可以继续使⽤。
305 Use Proxy 客户请求的⽂档应该通过Location头所指明的代理服务器提取(HTTP 1.1新)。
307 Temporary Redirect 和302(Found)相同。许多浏览器会错误地响应302应答进⾏重定向,即使原来的请求是POST,即使它实际上只能在POST请求的应答是303时才能重定向。由于这个原因,HTTP 1.1新增了307,以便更加清除地区分⼏个状态代码:当出现303应答时,浏览器可以跟随重定向的GET和POST请求;如果是307应答,则浏览器只能跟随对GET请求的重定向。
注意,HttpServletResponse中没有为该状态代码提供相应的常量。(HTTP 1.1新)
400 Bad Request 请求出现语法错误。
401 Unauthorized 客户试图未经授权访问受密码保护的页⾯。应答中会包含⼀个WWW-Authenticate头,浏览器据此显⽰⽤户名字/密码对话框,然后在填写合适的Authorization头后再次发出请求。
403 Forbidden 资源不可⽤。服务器理解客户的请求,但拒绝处理它。通常由于服务器上⽂件或⽬录的权限设置导致。
404 Not Found ⽆法到指定位置的资源。这也是⼀个常⽤的应答,HttpServletResponse专门提供了相应的⽅法:
sendError(message)。
405 Method Not Allowed 请求⽅法(GET、POST、HEAD、DELETE、PUT、TRACE等)对指定的资源不适⽤。(HTTP 1.1新)
406 Not Acceptable 指定的资源已经到,但它的MIME类型和客户在Accpet头中所指定的不兼容(HTTP 1.1新)。
407 Proxy Authentication Required 类似于401,表⽰客户必须先经过代理服务器的授权。(HTTP 1.1新)
408 Request Timeout 在服务器许可的等待时间内,客户⼀直没有发出任何请求。客户可以在以后重复同⼀请求。(HTTP 1.1新)
409 Conflict 通常和PUT请求有关。由于请求和资源的当前状态相冲突,因此请求不能成功。(HTTP 1.1新)
410 Gone 所请求的⽂档已经不再可⽤,⽽且服务器不知道应该重定向到哪⼀个地址。它和404的不同在于,返回407表⽰⽂档永久地离开了指定的位置,⽽404表⽰由于未知的原因⽂档不可⽤。(HTTP 1.1新)
411 Length Required 服务器不能处理请求,除⾮客户发送⼀个Content-Length头。(HTTP 1.1新)
412 Precondition Failed 请求头中指定的⼀些前提条件失败(HTTP 1.1新)。
413 Request Entity Too Large ⽬标⽂档的⼤⼩超过服务器当前愿意处理的⼤⼩。如果服务器认为⾃⼰能够稍后再处理该请求,则应该提供⼀个Retry-After头(HTTP 1.1新)。
414 Request URI Too Long URI太长(HTTP 1.1新)。
416 Requested Range Not Satisfiable 服务器不能满⾜客户在请求中指定的Range头。(HTTP 1.1新)
500 Internal Server Error 服务器遇到了意料不到的情况,不能完成客户的请求。
501 Not Implemented 服务器不⽀持实现请求所需要的功能。例如,客户发出了⼀个服务器不⽀持的PUT请求。
502 Bad Gateway 服务器作为⽹关或者代理时,为了完成请求访问下⼀个服务器,但该服务器返回了⾮法的应答。
503 Service Unavailable 服务器由于维护或者负载过重未能应答。例如,Servlet可能在数据库连接池已满的情况下返回503。服务器返回503时可以提供⼀个Retry-After头。
504 Gateway Timeout 由作为代理或⽹关的服务器使⽤,表⽰不能及时地从远程服务器获得应答。(HTTP 1.1新)
505 HTTP Version Not Supported 服务器不⽀持请求中所指明的HTTP版本。(HTTP 1.1新)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。