19. HTTP协议二:HTTP请求与响应、常见状态码

时间:2021-10-10 04:48:15

HTTP请求与响应

HTTP请求

HTTP请求是指从客户端到服务器端的请求消息。HTTP请求主要由三部分构成,请求行、请求头(headers)、body(请求数据)。
19. HTTP协议二:HTTP请求与响应、常见状态码

19. HTTP协议二:HTTP请求与响应、常见状态码

上图是笔者用Charles抓包工具抓的一个浏览器请求,当然用谷歌浏览器F12也是可以的。通过抓包工具我们可以看到当我们向服务器请求时,发送了很多数据给服务器,但主要还是三部分:状态行、请求头(headers)、body(数据)。

HTTP响应

当我们向服务器发送一个HTTP请求时,服务器一般都会给出响应。HTTP响应主要由三部分构成,响应行、响应头(headers)、响应正文。

19. HTTP协议二:HTTP请求与响应、常见状态码

19. HTTP协议二:HTTP请求与响应、常见状态码

常见状态码

HTTP响应我们提到状态码这个概念,状态码一般以1/2/3/4/5 开头,如下所示:

1xx: 信息响应类,表示接收到请求并且继续处理
2xx: 处理成功响应类,表示动作被成功接收、理解和接受
3xx: 重定向响应类,为了完成指定的动作,必须接受进一步处理
4xx: 客户端错误,客户请求包含语法错误或者是不能正确执行
5xx: 服务端错误,服务器不能正确执行一个正确的请求

常见状态码如下所示:
1xx:信息

状态码 描述
100 Continue 服务器仅接收到部分请求,但是一旦服务器并没有拒绝该请求,客户端应该继续发送其余的请求。
101 Switching Protocols 服务器转换协议:服务器将遵从客户的请求转换到另外一种协议。

2xx:信息

状态码 描述
200 OK 请求成功(其后是对GET和POST请求的应答文档。)
201 Created 请求被创建完成,同时新的资源被创建。
202 Accepted 供处理的请求已被接受,但是处理未完成。

3xx:信息

状态码 描述
300 Multiple Choices 多重选择。链接列表。用户可以选择某链接到达目的地。最多允许五个地址。
301 Moved Permanently 所请求的页面已经转移至新的url。
302 Found 所请求的页面已经临时转移至新的url。
303 See Other 所请求的页面可在别的url下被找到。
304 Not Modified 未按预期修改文档。客户端有缓冲的文档并发出了一个条件性的请求(一般是提供If-Modified-Since头表示客户只想比指定日期更新的文档)。服务器告诉客户,原来缓冲的文档还可以继续使用。

4xx:信息

状态码 描述
400 Bad Request 服务器未能理解请求。
401 Unauthorized 被请求的页面需要用户名和密码。
402 Payment Required 此代码尚无法使用。
403 Forbidden 对被请求页面的访问被禁止。
404 Not Found 服务器无法找到被请求的页面。

5xx:信息

状态码 描述
500 Internal Server Error 请求未完成。服务器遇到不可预知的情况。

欢迎关注微信公众号:软件测试汪。软件测试交流群:809111560