HTTP网络协议
#### 1.网络协议包 1)在网络中传递信息都是以【二进制】形式存在的 2)接收方【浏览器/服务器】在接收信息后,要将【二进制数据】进行编译【文字、图片、视频、命令】 3)传递信息数据量往往比较巨大,导致接收方很难在一组连续二进制得到对应数据 4)网络协议包是一组有规律的二进制数据,在这组数据中存在了固定空间,每一个空间专门存放特定信息, 接收方在接收网络协议包后就可以到固定空间得到对应信息,网络协议包的出现极大降低了接收方对接收的二进制数据编译难度 【0000(ip地址) 0000(端口号) 0000(资源文件名) 0000】 #### 2.常见网络协议包 1)FTP网络协议包 2)HTTP网络协议包 #### 3.HTTP网络协议包 在基于B/S结构下互联网通信过程中,所有在网络中传递信息都是保存在HTTP网络协议包 分类: HTTP请求协议包: 在浏览器准备发送请求时,负责创建一个http请求协议包, 浏览器将请求信息以二进制形式保存在http请求协议包各个空间, 由浏览器负责将http请求协议包推送到指定服务端计算机 HTTP响应协议包: Http服务器在定位到被访问的资源文件后,负责创建一个Http响应协议包, Http服务器将定位文件内容或文件命令以二进制形式写入Http响应协议包各个空间, 由Http服务器负责将Http响应协议包推送回发起请求的浏览器中 #### 4.HTTP请求协议包内部空间 1)按照自上而下划分:(四个空间) 2)空间划分: 请求行:[ url:请求地址 (http://192.168.100.2:8080/index.html) method:请求方式 (POST/GET) ] 请求头:[ 请求参数信息【GET】 ] 空白行:[ 没有任何内容,起到隔离作用 ] 请求体:[ 请求参数信息【POST】 ] #### 5.HTTP响应协议包内部空间 1)按照自上而下划分:(四个空间) 2)空间划分: 状态行:[ HTTP状态码 ] 响应头:[ content-type:指定浏览器采用对应编译器对响应体二进制数据进行相应解析 ] 空白行:[ 没有任何内容,起隔离作用 ] 响应体:[ 可能是被访问的静态资源文件内容 可能是被访问的静态资源文件命令 可能是被访问的动态资源文件运行结果 **都是以二进制形式** ]