Web基础(HTTP协议)

目录

一、HTTP协议。

(1)基本概念。

(2)HTTP协议关键特点和组成部分。

1、请求------响应。

2、无状态协议。

3、常用方法。

<1>GET请求。

<2>POST请求。

[4、响应状态码(Status Codes):](#4、响应状态码(Status Codes):)

5、持久连接。

6、管道。

7、HTTP协议的安全性。

8、分块传输编码。

9、内容编码。

(3)基本小结。


一、HTTP协议。

(1)基本概念。
  • HTTP(HyperText Transfer Protocol,超文本传输协议)是一种用于分布式、协作式、超媒体信息系统的网络协议。
  • 定义了客户端(如网页浏览器)与服务器(如网站服务器)之间请求响应的格式。HTTP 是互联网上应用最广泛的协议之一,主要用于传输网页内容。

(2)HTTP协议关键特点和组成部分。
1、请求------响应。
  • HTTP 工作在客户端-服务器模型之上。客户端浏览器携带相关请求数据,发起请求。服务器对请求进行处理与数据进行解析,然后响应请求。
  • 双方按照一定的格式去解析数据、响应数据。而这些格式都是在HTTP协议进行定制的。

  • 案例。
  • 当点击登录提交按钮。

  • 通过浏览器的"开发者工具"查看网络中的请求和响应信息。

  • 头部(Headers):HTTP 请求和响应都包含头部信息。这些头部信息提供了关于请求或响应的附加信息。例如:Content-Type:指定传输的数据类型。User-Agent:请求的用户代理信息。Accept:客户端能够处理的媒体类型。Set-Cookie:服务器向客户端设置Cookie。
  • 请求标头:key---value存在的那些数据就是请求头。如果是post请求就会存在请求体。

  • 响应标头:第一行展示了协议的版本。其中后面的"200"是响应的状态码。(200代表响应成功)而key---value存在的那些数据就是响应头。
  • 响应体。

  • 我们可以发现就如概念所说,它们的原始数据就是一些文本数据

2、无状态协议。
  • HTTP 本身是无状态的,这意味着服务器不会保存关于客户端请求的任何信息。
  • 它对于事务的处理是没有记忆的!
  • 每次请求------响应都是相互独立的,服务器不会记住之前的请求信息。HTTP协议是基于请求------响应模型。也就是一次请求对应一次响应。

3、常用方法。
  • HTTP 定义了一系列的方法(也称为动词),用于指定对资源的操作类型。

  • GET:请求指定的页面信息,并返回实体主体。(重要)
  • POST:向指定资源提交数据进行处理请求。(例如提交表单或者上传文件)(重要)

<1>GET请求。
  • 请求参数会在浏览器的地址栏中显示,所以不安全。
  • 请求参数长度限制长度在1K之内。
  • GET请求没有请求体,无法通过request.setCharacterEncoding()来设置参数的编码。

<2>POST请求。
  • 请求参数不会显示浏览器的地址栏,相对安全。

  • 请求参数长度没有限制。可以上传较大的资源文件。


  • PUT:上传文件。
  • DELETE:删除文件。
  • HEAD:请求获取与GET请求相同的响应,但没有响应体。
  • OPTIONS:用于描述目标资源的通信选项。

4、响应状态码(Status Codes):
  • 服务器响应客户端请求时,会返回一个状态码,表示请求的结果。常见的状态码包括以下情况。
  • 200。OK:请求成功。
  • 301。Moved Permanently:永久重定向。
  • 404。Not Found:请求的资源未找到。
  • 500。Internal Server Error:服务器内部错误。

5、持久连接。
  • HTTP/1.1 支持持久连接,允许多个请求和响应在同一个TCP连接上进行,减少了建立和关闭连接的开销。

6、管道。
  • HTTP/1.1 还支持管道技术,允许客户端在等待服务器响应当前请求时,继续发送新的请求。

7、HTTP协议的安全性。
  • HTTP协议是基于TCP进行通信的。
  • 因为TCP是面向安全的协议 。在建立连接时需要"三次握手"(确认双方都有发送、接收数据的能力,然后再进行数据的传输,这样就不会出现丢失"数据包"的情况,更加安全)

  • HTTP 本身不提供加密。但可以通过使用 HTTPS(HTTP Secure),即在HTTP上加上SSL/TLS协议来提供加密传输。

8、分块传输编码。
  • 允许服务器在知道整个响应大小之前就开始发送响应。

9、内容编码。
  • 如gzip,用于压缩传输的数据,减少传输时间。、

(3)基本小结。
相关推荐
傻啦嘿哟3 小时前
代理IP:苹果Siri与ChatGPT Plus融合的关键助力
网络协议·tcp/ip·chatgpt
earthzhang20214 小时前
《深入浅出HTTPS》读书笔记(10):流密码算法
网络·网络协议·http·https·1024程序员节
今朝无言12 小时前
Tri Mode Ethernet MAC IP核详解
网络·网络协议·tcp/ip·fpga开发
C++忠实粉丝13 小时前
计算机网络socket编程(5)_TCP网络编程实现echo_server
网络·c++·网络协议·tcp/ip·计算机网络·算法
丁总学Java17 小时前
netstat -tuln | grep 27017(显示所有监听状态的 TCP 和 UDP 端口,并且以数字形式显示地址和端口号)
网络协议·tcp/ip·udp
java_heartLake19 小时前
网络协议之UDP
网络·网络协议·udp
_西瓜_20 小时前
可通过HTTP获取远端WWW服务信息
网络·网络协议·安全·http
苦逼IT运维20 小时前
Docker 配置 HTTP 和 HTTPS 网络代理
网络·http·docker
网络安全Ash21 小时前
运维之网络安全抓包—— WireShark 和 tcpdump
网络·网络协议·安全·网络安全