应用层协议
负责应用程序之间的数据沟通-----而应用程序是程序员写的,所以应用层协议实际上是程序员自己定的。
**1.**自定制协议的思路:(私有协议)
客户端需要将多个数据对象,进行格式组织,然后通过网络传输,传递给服务端。
如何进行格式组织呢? — 使用结构体
使用结构体进行数据对象的二进制结构化组织,进行数据传输/可持久化数据存储。
2. 序列化/反序列化的概念
序列化:将数据对象按照指定协议进行组织成可持久化存储/数据传输的二进制数据串。
反序列化:将持久存储/数据传输的二进制数据串按照指定协议解析出各个数据对象。
而使用结构体来组织数据其实就是数据对象的二进制序列化。
常见的数据结构序列化方式有很多: json序列化 : protobuf序列化
HTTP协议:超文本传输协议--------HTTP协议给程序员留有一定的自定制空间。
网址: 统一资源定位符(定位网络中唯一的资源) URL
URL的格式以及所包含的要素:
https://username:password@www.baidu.com/s?wd=c%2B2B&rsv spt=1#ch
URL编码:将特殊字符的每一个字节,都转化成16进制数字的字符,在对每一个字节进行转化后,需要在前边加上%表示紧跟其后的两个字