HTTP(URL、HTTP请求、HTTP报头中的属性字段、长连接和短链接、cookie和session、重定向location)、HTTP的方法、HTTP响应、HTTP的状态码、https)

1. 序列化与反序列化

  假设我们需要实现一个 服务器版的加法器,客户端把要计算的两个加数发过去,然后由服务器进行计算,最后再把结果返回给客户端
对于这一过程,我们也需要首先制定协议 (具体执行之前的一种约定)

协议一:

  • 客户端 发送一个形如"1+1"的字符串
  • 这个字符串有两个操作数,都是整形
  • 两个数字之间会有一个字符是运算符,且运算符只能是+
  • 数字和运算符之间没有空格
  • ……

平常在读写数据时,我们都是按照"字符串"的方式来发送接收的,假如我们要传输一些"结构化的数据"怎么办?

协议二:

  • 定义结构体来表示我们需要交互的信息
  • 发送数据时将这个结构体按照一定的规则转换成字符串,接收到数据的时候再按照相同的规则把字符串转化回结构体
  • 这个过程叫做"序列化"(一变多)和"反序列化"(多变一)

无论采用协议一,还是协议二,只要保证一端发送时构造的数据,在另一端能够正确的解析,就都是可以的。这种约定 就是应用层协议(定义了运行在不同端系统上的应用程序进程如何相互传递报文)

  由上述例子可以看出,应用层协议我们自己也可以书写,但实际上有些行业精英已经定义了一些现成的,又很好用的应用层协议供我们参考使用,HTTP(超文本传输协议)就是其中之一。

2. HTTP 超文本传输协议

2.1 认识URL

URL即就是我们平常所说的网址
在这里插入图片描述
其中服务器端口号是可以省略的,协议与端口号是相互对等的,就像有人受伤了你会打120,着火你会打119,http对应的端口号是80,https对应的端口是是443

2.2 HTTP请求

HTTP请求
空行用于区分报头和有效载荷

2.2.1 请求方法 get、post

get和post的区别:

<
get post
对数据长度的限制 有限制:发送数据时,GET 方法向 URL 添加数据;URL 的长度是受限制的(URL 的最大长度是 2048 个字符)。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值