HTTP 协议

什么是 HTTP 协议

HTTP(超文本传输协议),是一种为分布式、合作式、多媒体信息系统服务,面向应用层的协议,是 Internet 上目前使用最广泛的应用层协议,它基于传输层的 TCP 协议进行通信,HTTP 协议是通用的、无状态的协议。

HTTP 协议三大特点

遵循请求/响应模型

客户端向服务器发送请求,而服务器只能被动响应客户端的请求

无连接

当客户端向服务器发送请求时,将建立与服务器的连接;当一次请求/响应结束后,客户端与服务器将自动断开网络连接。当客户端再一次向服务器发送请求时,将重新与服务器建立连接。

无状态

无状态是指协议对于前后两次请求/响应没有记忆能力,而动态 Web 是需要保存不同请求之间的状态的,但 HTTP 协议层面不支持状态保存,所以常用的解决方案就是 Session 会话,以实现状态管理。

HTTP 协议请求

HTTP 协议请求由三部分组成:请求行、请求头、请求正文

HTTP 请求方式

HTTP 请求有四种方式

  • 用户在浏览器地址栏中输入 URL 地址并回车向服务器发送请求(GET方式)

  • 用户通过网页超链接发送请求(GET方式)

  • 用户在网页上提交填写好的表单向服务器发送请求(GET/POST方式)

  • 用户在网页上使用 AJAX 技术向服务器发送请求(任意方式)

HTTP 请求 GET和POST 方法区别

HTTP 协议响应

HTTP 协议响应由四部分组成:状态行、响应头、空行、消息体

消息体支持数据类型:

  1. x-www-form-urlencoded:一种轻型表单,只支持普通文本,优点是占用字节少
  2. form-data:全名为 multipart/form-data,会把表单内容分成多个部分,每个部分都支持不同的格式,优点是支持文件上传,缺点是占用字节多
  3. raw:使用的是纯字符串的数据上传方式(一般使用JSON格式字符串)

HTTP 协议状态码

HTTP 状态码表示服务器端处理客户端的 HTTP 请求返回的处理结果状态信息,可以通过状态码判断客户端 HTTP 请求是否得到服务器正确处理

  • 404 表示客户端请求服务器未收到或无法处理
  • 500 表示服务器处理出现错误或异常
posted @ 2020-10-13 21:46  Binge-和时间做朋友  阅读(184)  评论(0编辑  收藏  举报