HTTP协议简单理解

简介: HTTP协议简单理解

1.什么是HTTP

超文本传输协议(Hyper Text Transfer Protocol,HTTP)是一个应用层的数据传输协议。

也叫请求-响应协议:它指定了客户端可以发送给服务器什么样的消息(请求),以及得到什么样的响应。

  • 超文本?
  • 文本:html、字符串等
  • 超文本:图片、音乐、视频、定位、地图等
  • 传输?
  • 数据从一个终端传到另一个终端上
  • 传输过程中,发送请求的一端叫请求方,回应请求的一方叫应答方。
  • 请求方和应答方可以互换,可以是C/S或B/S

  • 协议?
  • 网络协议为计算机网络中进行数据交换而建立的规则、标准或约定的集合。

总结:HTTP 是一个在计算机终端之间传输文字、图片、音频、视频等超文本数据的约定和规范集合。

2.http基础知识

1. 端口号

  • http:80
  • https:443

2.响应状态码

200:请求响应成功

3**:请求重定向

404:找不到资源

5**:服务器代码错误

502:网关错误


3.请求方法

  • get 获取资源:请求能够携带的参数比较少,大小有限制,会在浏览器的URL地址栏显示数据内容,非常不安全,但是效率高。

  • post 向服务器传送数据:请求能够携带的参数没有限制,大小没有限制,不会在浏览器URL显示数据内容,安全不高效。

  • Put 传输文件:
  • Head 获得响应头部:


4.http版本

  • http1.0
  • 客户端可以与web服务器连接后,只能获取一个web资源,然后断开连接
  • http1.1
  • 可以获得多个web资源,减少了大量的请求


3.http构成

  1. 起始行
    请求行中的请求方式
请求 URL: https://www.baidu.com/?tn=44004473_35_oem_dg
请求方法: GET
状态代码: 200 OK
远程地址: 220.181.38.150:443
  1. 头部字段(分通用标头、请求标头、响应标头 和 实体标头)
  • 通用头

  • 实体头
  • 实体标头用于 HTTP 请求和响应中

请求头

GET /home.html HTTP/1.1
Host: developer.mozilla.org   服务器的域名
Accept: 告诉浏览器能支持的格式
Accept-Encoding: 支持的编码格式
Accept-Language: 告诉浏览器语言环境
Cache-Control: 缓存控制
Connection: keep-alive  告诉浏览器请求时断开还是保持连接

响应头

  1. 空行
  2. 消息正文(实体)

4.http的载体之一浏览器

1.浏览器发起请求和接受响应的过程:

  1. 在地址栏输入URL(即网址)
  2. 浏览器会向DNS(域名服务器)提供网址,由它来完成 URL 到 IP 地址的映射将请求提交给具体的服务器
  3. 由服务器返回我们要的结果(以HTML编码格式返回给浏览器)
  4. 浏览器执行HTML编码,将结果显示在浏览器的正文

2.http请求URL资源

  • 统一资源定位系统(uniform resource locator;URL
  • 每个应用程序对应一个端口号
  • 查询参数是用 & 符号分隔的键/值对列表
  • 锚点代表资源内的一种“书签”,在HTML文档上,浏览器将滚动到定义锚点的那个点上;在视频或音频文档上,浏览器将转到锚点代表的那个时间


https://editor.csdn.net/md/?articleId=124953612

协议://主机:端口号/具体请求资源路径?查询参数1=value1&查询参数2=value2#锚点

相关文章
|
4天前
|
算法 网络协议 安全
HTTP/2 协议的缺点是什么?
HTTP/2 协议的缺点是什么?
|
4天前
|
网络协议 网络安全 网络虚拟化
本文介绍了十个重要的网络技术术语,包括IP地址、子网掩码、域名系统(DNS)、防火墙、虚拟专用网络(VPN)、路由器、交换机、超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)和云计算
本文介绍了十个重要的网络技术术语,包括IP地址、子网掩码、域名系统(DNS)、防火墙、虚拟专用网络(VPN)、路由器、交换机、超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)和云计算。通过这些术语的详细解释,帮助读者更好地理解和应用网络技术,应对数字化时代的挑战和机遇。
27 3
|
15天前
|
网络协议 安全 Go
Go语言进行网络编程可以通过**使用TCP/IP协议栈、并发模型、HTTP协议等**方式
【10月更文挑战第28天】Go语言进行网络编程可以通过**使用TCP/IP协议栈、并发模型、HTTP协议等**方式
43 13
|
8天前
|
传感器 缓存 网络协议
CoAP 协议与 HTTP 协议的区别
CoAP(Constrained Application Protocol)协议是为资源受限的设备设计的轻量级协议,适用于物联网场景。相比HTTP,CoAP具有低功耗、低带宽占用和简单易实现的特点,支持多播通信和无连接的交互模式。
|
13天前
|
开发者
HTTP 协议请求方法的发展历程
【10月更文挑战第21天】
|
13天前
|
安全
HTTP 协议的请求方法
【10月更文挑战第21天】
|
13天前
|
缓存 安全 前端开发
HTTP 协议的请求方法在实际应用中有哪些注意事项?
【10月更文挑战第29天】HTTP协议的请求方法在实际应用中需要根据具体的业务场景和需求,合理选择和使用,并注意各种方法的特点和限制,以确保网络通信的安全、高效和数据的一致性。
|
15天前
|
存储 缓存 网络协议
计算机网络常见面试题(二):浏览器中输入URL返回页面过程、HTTP协议特点,GET、POST的区别,Cookie与Session
计算机网络常见面试题(二):浏览器中输入URL返回页面过程、HTTP协议特点、状态码、报文格式,GET、POST的区别,DNS的解析过程、数字证书、Cookie与Session,对称加密和非对称加密
|
17天前
|
网络协议 前端开发 API
HTTP 和 TCP 协议的应用场景有哪些不同
【10月更文挑战第25天】HTTP(超文本传输协议)和 TCP(传输控制协议)处于网络协议栈的不同层次,各自具有独特的功能和特点,因此它们的应用场景也存在明显的差异。
|
17天前
|
安全 前端开发 JavaScript
利用HTTP协议进行文件上传和下载的常见方法
【10月更文挑战第25天】可以利用HTTP协议方便地实现文件的上传和下载功能,满足不同应用场景下的需求。在实际应用中,还可以根据具体的业务需求和安全要求,对文件上传和下载的过程进行进一步的优化和安全处理。