当前位置: 首页 > news >正文

网络原理--HTTP

一、HTTP

1、大概介绍

HTTP,全称是超文本传输协议,是一种使用广泛的应用层协议。HTTP往往是基于传输层的TCP协议实现的,目前我们主要使用的是HTTP1.1和HTTP2.0。

我们平时打开一个网站就是通过HTTP协议来传输数据的,当我们在浏览器中输入一个百度搜索的网址时(URL),浏览器就给百度的服务器发送了一个HTTP请求,百度的服务器返回了一个HTTP响应,请求与响应一一对应。这个响应结果被浏览器解析之后,就展示成我们看到的画面,这个过程中浏览器可能会给服务器发送多个HTTP请求,服务器会对应返回多个响应,这些响应里就包括了页面HTML,CSS,JavaScript,图片等信息。

数据能通过TCP/IP协议进行传输,但是对于服务器和客户端是需要知道具体信息的,应用层协议就是对数据进行加工处理或者使用。

2、HTTP请求

①认识URL

URL基本格式:平时我们俗称的网络其实就是URL,互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它URL的详细规则由因特网标准RFC1738进行了约定。

https://user:pass@www.example.jp:80/dir/index.htm?=1#ch1

一个具体的URL:

https://v.bitedu.vip/personInf/student?userId=10000&classId=100

https:协议方案名,常见的有http和https,也有其他的类型。

user:pass:登录信息。现在的网站进行身份认证一般不在通过URL进行了。一般会省略。

v.bitedu.vip:服务器地址,此处是一个域名,域名会通过DNS系统解析成一个具体的IP地址。

端口号:上面的URL端口号被省略了。当端口号被省略时,浏览器会根据协议类型自动决定使用哪个端口,例如https协议默认使用443端口。

/personInf/student:带层次的文件路径

userId=10000&classId=100:查询字符串。本质是一个键值对结构,键值对之间使用&分割,键和值之间使用=分割。

片段标识:此URL中省略了片段标识,片段标识主要用于页面内跳转。

②认识“方法”

方法说明支持的HTTP协议版本
GET获取资源1.0、1.1
POST传输实体主体1.0、1.1
PUT传输文件1.0、1.1
HEAD获得报文首部1.0、1.1
DELETE删除文件1.0、1.1
OPTIONS询问支持的方法1.1
TRACE追踪路径1.1
CONNECT要求用隧道协议连接代理1.1
LINK建立和资源之间的联系1.0
UNLINE断开连接关系1.0

1.在浏览器中输入一个URL,浏览器就会发送一个GET请求。

2.POST方法多用于提交用户输入的数据给服务器。GET和POST可以混用,也有区别,GET一般用于获取数据,POST一般用于提交数据;GET的body一般为空,需要传递的数据通过query string传递,POST的query string一般为空,需要传递的数据通过body传递。

③认识请求报头(header)

header的整体格式也是“键值对”结构。每个键值对占一行,建和值之间使用分号分隔。

几种常见报头:

Host:

表示服务器主机的地址和端口。

Content-Length:

表示body中的数据长度。

Content-Type:

表示请求的body中的数据格式。

User-Agent:

表示浏览器/操作系统的属性,可以区分用户所用版本和设备是PC还是平板还是手机。

Refer:
表示这个页面是从哪个页面跳转过来的。

Cookie:

Cookie中存储了一个字符串,这个数据可能是客户端(网页)自行通过JS写入的,也可能是来自于服务器(服务器在HTTP响应的header中通过Set-Cookie字段给浏览器返回数据)。

可以通过这个字段实现“身份标识”的功能,每个不同的域名下都可以由不同的Cookie,不同网站之间的Cookie并不冲突。

3、HTTP响应解释

①认识状态码:

响应首行的信息是HTTP版本号+状态码+状态码解释

一些常见的状态码和状态码解释:

状态码状态码解释详情
200OK表示访问成功
404Not Found用户输入的url资源不存在或者输入错误
403Forbidden标识访问被拒绝,有些页面访问需要用户权限
405Method Not Allowed表示对方服务器不一定支持所有方法
500Internal Server Error表示服务器内部出现问题
504Gateway Timeout服务器负载过大,处理单条请求消耗时间就会很长,可能超时
302Move temporarily临时重定向,实现登录成功后自动跳转到主页,响应报文的header部分会包含一个Location字段,表示要跳转到哪个页面。
301Moved Permanently永久重定向,当浏览器收到这种请求,后续的请求都会自动改成新的地址。

http://www.dtcms.com/a/560647.html

相关文章:

  • 网站开发宣传标语2017做网站还赚钱吗
  • 海南网站建设公司哪家好wordpress 有点慢
  • Flutter 存储管理:从基础到进阶的完整指南
  • 鸿蒙Flutter三方库适配指南:09.版本升级适配
  • AutoAnalyze智能数据分析助手开源项目
  • “监狱”风云:如何设计爬虫的自动降级与熔断机制?
  • 关于力扣3721. 最长平衡子数组 II线段树解法的反思
  • Visual Basic.NET 的特性
  • LabVIEW的Vision边缘工具(Edge Tool)功能
  • LabVIEW工业零件尺寸测量
  • 网站建设自建的优点百度指数在线查询前100
  • 【AI智能体】Docker 部署 Coze应用服务实战操作详解
  • QAxios研发笔记(二):在Qt环境下基于Promise风格简化Http的Post请求
  • 用 Flink CDC 将 MySQL 实时同步到 StarRocks
  • 基础开发工具---软件包装管理器及vim
  • 邮箱登陆嵌入网站义乌网站建设方案详细
  • 榨干 CPU 性能:通过绑核将 Redis 尾延迟减半!
  • 数据结构之栈和队列-队列
  • 十九、STM32的TIM(十)(编码器)
  • FSDP(Fully Sharded Data Parallel)全分片数据并行详解
  • Transformer 模型详解:从输入到输出的全流程剖析
  • 网站开发工单营销型网站建设设定包括哪些方面
  • EF Core 数据库迁移
  • 【攻防实战】通达OA文件上传联动Cobalt Strike打穿三层内网(下)
  • 网站备案 教程广州花都区网站建设
  • FPC-40P-05转接板-嘉立创EDA设计
  • Java核心概念深度解析:从包装类到泛型的全面指南
  • 灵途科技亮相NEPCON ASIA 2025 以光电感知点亮具身智能未来
  • flash-attn安装过程中编译错误
  • 世界最受欢迎的免费架站平台经营网站 备案信息