HTTP(1)

HTTP协议

HTTP是什么

HTTP(全称为"超文本传输协议")是一种应用非常广泛的基于TCP协议的应用层协议。

常见的应用场景:

  1. 浏览器与服务器之间的交互(访问网站)
  2. 手机与服务器之间的通信
  3. 多个服务器之间进行通信

使用Fiddler打开百度网址的请求报文:

GET https://www.baidu.com/index.htm HTTP/1.1
Get 是方法名,表示获取;
https://www.baidu.com/index.htm 表示访问的服务器地址和端口号,域名-->IP,HTTPS-->443;
HTTP/1.1 表示协议和版本号。
Host: www.baidu.com 以及下面数行以键值对形式表示的称之为请求报头,键与值用冒号隔开,键值中可以是HTTP规范中的内容,也可以是程序员自定义的内容。
响应报文:

HTTP/1.1 200 OK 是状态行,200是状态码表示成功响应,OK是对状态码的描述
Connection: keep-alive 以及以下数行则为响应报头,和请求报头的格式一样。

在空行之后,代表body正文部分

认识URL

URL(Uniform Resource Locator 统一资源定位符)其实就是我们俗称的"网址"。

互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎样处理它。

认识方法

方法 说明 支持的HTTP协议版本
GET 获取资源 1.0,1.1
POST 传输实体主体 1.0,1.1
PUT 传输文件 1.0,1.1
DELETE 删除文件 1.0,1.1

大部分场景使用的都是GET方法,比如访问一个网站,获取一个图片,只要是获取资源都是GET。

POST指的是要提交一些数据到服务器,比如登录时输入的用户名密码,最终会被提交到服务器。

PUT在一些系统中用来更新数据

DELETE删除数据

如何指定请求的方法?

  1. 当在浏览器的地址中输入一个URL时并发起访问,发送的全是GET请求
  2. 通过代码(JavaScript)发送请求,可以指定GET,POST,PUT,DELETE
  3. 通过HTML中的表单来指定方法名
  4. 网站加载所需要的一些资源都是用GET方法,比如网站中的图片,样式等等。
相关推荐
yyuuuzz7 小时前
跨境站点日志时区混乱的排查记录
运维·服务器·网络·云计算·aws·1024程序员节
GlobalInfo7 小时前
全球及中国风电叶片检测机器人行业研究报告(2026版):市场现状、行业前景与占有率分析
运维·网络·人工智能·机器人
严谨的麻辣烫8 小时前
静态 ISP 代理请求超时怎么排查?Python 与 curl 实战
python·http·requests·1024程序员节·网络排障
运维行者_9 小时前
网络监控工具怎么选?从设备监控到智能运维的能力清单
运维·服务器·开发语言·网络·人工智能·支持向量机·php
2401_868534789 小时前
陈冲2026年上海纽约大学全英文毕业演讲
服务器·网络
FPGA小迷弟11 小时前
FPGA开发Vivado Block Design/Vitis/SDK/xlinx/开发教程,保姆级别,一看就会!
网络协议·tcp/ip·fpga开发·verilog·fpga
FPGA小迷弟11 小时前
基于FPGA实现智能网卡的概念,什么是智能网卡
网络协议·tcp/ip·fpga开发·verilog·fpga
DYWorker00113 小时前
第1课:基于正点原子RK3568开发板读懂Linux内核
linux·运维·网络
Lzg_na14 小时前
数据链路层差错控制使用的算法详解
网络
努力努力再努力wz15 小时前
【C++ 高阶系列】C++ 高性能网络编程:当 Reactor 遇见协程:从 epoll 回调到异步 MySQL,彻底打通任务挂起与恢复
网络·c++·mysql