HTTP 状态码

96 阅读3分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路

100~199 请求正被处理 200-299 请求成功处理 300 -399 请求需要附加操作,常见的例子如重定向 400-499 客户端出错导致请求无法被处理 500-599 服务器处理出错

客户端:是指与服务器相对应,为客户提供本地服务的程序。一般安装在普通的用户机上,需要与服务端互相配合运行。互联网发展以后,较常用的客户端包括了如万维网使用的网页浏览器,收寄电子邮件时的电子邮件客户端,以及即时通信的客户端软件等。

常见:

  • 100 Continue 请求者应当继续提出请求。 服务器返回此代码表示已收到请求的第一部分,正在等待其余部分

  • 101 Switching Protocol 请求者已要求服务器切换协议,服务器已确认并准备切换

  • 200 OK 表示请求已经被正常处理。

  • 204 NO Content 表示请求成功,但是响应的报文中不含实体主体。通常用于只需要客户端向服务端发送信息,而不需要接受新信息的情况使用

  • 206 Partial Content 只返回了请求资源的部分。这种情况必须提到提到一个请求头Range——在http的请求中,这个头部用来表示范围请求

'Range':byte=5001-10000 // 表示本次要请求资源的5001-10000字节的部分

这种情况下,如果服务器接受范围请求并且成功处理,就会返回206,并且在响应的头部返回

'Content-Range':bytes 5001-10000/10000 // 表示整个资源有10000字节,本次返回的范围为 5001-10000字节
  • 301 Moved Permanently 资源被永久重定向了。这种情况下响应的头部字段Location中一般还会返回一个地址,用来表示要新地址。
  • 302 Found 资源临时重定向了。和301的唯一区别就在于一个是临时,一个是永久
  • 303 See Other 和302很像,但是有个细微区别是,除了会提示客户端去请求Location以外,还会要求请求要使用Location时使用GET方法。
  • 304 Not Modified 资源未改变,可直接使用缓存。
  • 307 Temporary Redirect 302时浏览器默认会转用GET方法去请求Location,而如果是307, 含义就是严格限制不允许从POST转为GET
  • 400 Bad Request 请求中有语法错误
  • 401 Unauthorized 未经过认证
  • 403 Forbidden 禁止访问也就是无权限访问
  • 404 Not Found 服务端没有找到所请求的资源
  • 500 Internal Server Error 服务器故障 -502 Bad Gateway 作为网关或者代理工作的服务器尝试执行请求时,从上游服务器接收到无效的响应
  • 503 Service Unavailable 服务器暂时无法使用,可能是维护或者升级,反正无法使用
  • 504 Gateway Timeout 作为网关或者代理工作的服务器访问超时

参考: developer.mozilla.org/zh-CN/docs/… segmentfault.com/a/119000001…