HTTP 状态码

当浏览者访问一个网页时,浏览者的浏览器会向网页所在服务器发出请求。当浏览器接收并显示网页前,此网页所在的服务器会返回一个包含 HTTP 状态码的信息头(server header)用以响应浏览器的请求。HTTP 状态码的英文为 HTTP Status Code。HTTP状态码,可以根据请求响应代码检查服务器及程序是否正常,判断网页处于什么工作状态。我们就需要了解不同的状态码分别是什么含义。

 

HTTP 状态码分类

HTTP 状态码由三个十进制数字组成,第一个十进制数字定义了状态码的类型。响应分为五类:信息响应(100–199),成功响应(200–299),重定向(300–399),客户端错误(400–499)和服务器错误 (500–599):

commonresponce返回的code可以改不_状态码

 

常见的状态码

下面是常见的 HTTP 状态码:

  • 200 - 请求成功
  • 204 - 请求处理成功,但没有任何资源可以返回给客户端,一般在只需要从客户端往服务器发送信息,而对客户端不需要发送新信息内容的情况下使用。
  • 301 - 资源(网页等)被永久转移到其它URL
  • 302 - 资源(网页等)被临时转移到其它URL
  • 400 - 服务器端无法理解客户端发送的请求,请求报文中可能存在语法错误。
  • 401-  请求要求用户的身份认证,一般是指未被授权,请进行相关的身份验证,比如登录
  • 404 - 请求的资源(网页等)不存在,常常是代码错误,路径错误,网址输入错误或者是网络不佳,网络拥堵等等造成的
  • 418 - 服务器检测请求头,检查出你的操作疑似爬虫,总而拒绝,返回418
  • 500 - 内部服务器错误,无法完成请求
  • 503 - 抱歉,我现在正在忙着。该状态码表明服务器暂时处于超负载或正在停机维护,现在无法处理请求。

程序员最想看到的:200 - OK。

程序员不想看到的:500 - Internal-Server-Error。

用户不想看到的:401-Unauthorized、403-Forbidden、408-Request-Time-out。