【HTTP(1)】HTTP协议介绍

http,全称「超文本传输协议」

文本的意思是字符串,超文本,意味着http不仅能传输文本,还能传输图片,传输音频文件,传输视频,传输其他的各种数据等

http是一种典型的「一问一答」模型的协议

客户端->服务器

客户端发一个请求,服务器返回一个响应(一一对应)

打开网页这种场景,就属于典型的一问一答模式

【http报文格式】

借助抓包工具,可以观察到http请求/响应的详细情况

「抓包」:把通过网卡上的数据,获取到,并且解析显示出去,可以使用“Fiddler”抓包工具进行操作

「代理」:

给客户端跑腿的程序,为「正向代理」(将请求从客户端以代理服务器的身份发出)

给服务端跑腿的程序,为「反向代理」(将服务器监听端口在代理服务器上暴露)

【http请求的基本格式】

1.首行

2.请求头(header)

从第二行开始的若干行,一直到空行结束

 

不知道有多少行,遇到空行就结束

每一行都是一个键值对,键和值之间使用“: ”来分割

键值对是什么?

键值对是一种特殊的结构,分「键」和「值」两部分,键和值之间使用:空格 来进行分割

键值对不确定是几行,以空行为结尾

有的键值对只能出现在请求中,而有的只能出现在响应中,有的两者都能出现

3.空行

请求头的结束标记

4.正文(body)

有的请求中有body,有的请求中没有

【http响应的基本格式】

1.首行

2.响应头(header)

与上文请求头相同

3.空行

4.正文

【URL】

唯一资源定位符

网络上资源很多(资源可以是一个网页/文件/图片等,须要有一套规则,能找到某个指定的资源)

【URI】

唯一资源标识符

可以简单的理解成,URL是URI的一种实现

【URL基本格式】

【协议方案名】

声明给哪个协议进行使用

【登录信息(认证)】

现在见不到了,已废弃

【服务器地址】

可以是IP,也可以是域名

【服务器端口号】

不写端口则根据协议类型自动分配端口

http协议,自动分配80端口

https协议,自动分配443端口

【带层次的文件路径】

确定服务器上的具体资源

【查询字符串】

程序员自定义的键值对,可以对指定内容进行筛选

(没有“?”字符标明没有查询字符串)

对于一个URL来说,主要关心其中四个部分

1.IP地址(域名)

2.端口号

3.层次的路径【和代码直接相关】

4.查询字符串【和代码直接相关】

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值