http网络协议包

简介: http网络协议包

Http网络协议包

一.网络协议包的诞生

首先在网络中传递信息都是以【二进制】形式存在的。接收方【浏览器/服务器】(此处不管是前台还是后台)在接收信息后,要做第一件事就是将【二进制数据】进行编译成【文字,图片,视频,命令】

但是传递信息数据量往往比较巨大,导致接收方很难在一组连续二进制得到对应数据


比如此时前台浏览器发送一个请求: http://192.168.100.2:8080/index.html

这个请求信息实际是以二进制形式发送 的,格式假定为01010101010110101010101101010,但是Http服务器很难从二进制数据得到相关信息,为了更加有效的从二进制数据中获取到信息,此时便诞生了我们的网络协议包。


二.什么是网络协议包?

.网络协议包是一组有规律的二进制数据,在这组数据中存在着固定的空间,每一个空间专门存放特定信息,这样接收方在接收网络协议包之后,就可以到固定空间得到对应信息,网络协议包的出现极大的降低了接收方对接收二进制数据编译难度。


网络协议包的内部格式:假定此时从前台发送的请求的二进制形式的格式为0000 0000 0000 0000,那么在网络协议包内部便会将这组二进制数据划分为不同的板块,方便接收方对数据进行解析。如下所示:

         【0000(ip地址)0000(端口号)0000(资源文件名)0000】

                                   这种格式方便接受方从网络协议包中获取想要的资源,数据等,因为每一段二进制数字都存放者特定的信息


三 .常见网络协议

                1.FTP网络协议包


                 2.Http网络协议包(重要)


四.Http网络协议包

 在基于B/S结构下互联网通信过程中,所有在网络中传递信息都是保存在Http网络协议包


       分类:

             Http请求协议包


             Http响应协议包


五.Http请求协议包与Http响应协议包介绍

1.Http请求协议包:

在浏览器准备发送请求时,负责创建一个Http请求协议包,浏览器将请求信息以二进制形式保存在Http请求协议包各个空间,由浏览器负责将Http请求协议包推送到指定服务端计算机z


2.Http响应协议包:

Http服务器在定位到被访问的资源文件之后,负责创建一个Http响应协议包.Http服务器将定位文件内容或则文件命令以二进制形式写入到Http响应协议包各个空间由Http服务器负责将Http响应协议包推送回发起请求的浏览器上。


六.Http请求协议包内部空间【背】

    1.按照自上而下划分,分为4个空间


    2.空间划分:

   请求行:[
                    url:请求地址(http://192.168.100.2:8080/index.html)
                    method:请求方式(POST/GET)
                 ]
                请求头:[
                      请求参数信息【GET】,当前台的请求方法为get的时候,那么此时我们的请求参数信息便会放在请求头中
                 ]
                空白行:[
                        没有任何内容,起到隔离作用
                 ]
                 请求体:[
                     请求参数信息【POST】当前台的请求方法为post的时候,那么此时我们的请求参数信息便会放在请求体中
                  ]


七.Http响应协议包内部结构【背】

         1.按照自上而下划分,分为4个空间


         2.空间划分:

     状态行:[
                          Http状态码
                      ]
                     响应头:[
                          content-type: 指定浏览器采用对应编译器
                                对响应体二进制数据进行解析
                      ]
                     空白行:[
                          没有任何内容,起到隔离作用
                      ]
                     响应体:[
                         可能被访问静态资源文件内容
                 可能被访问的静态资源文件命令
                 可能被访问的动态资源文件运行结果
                          *****都是以二进制形式存储***
                      ]


相关文章
|
1月前
|
网络协议 Linux 网络安全
curl(http命令行工具):Linux下最强大的网络数据传输工具
curl(http命令行工具):Linux下最强大的网络数据传输工具
49 0
|
8天前
|
网络协议 Java API
深度剖析:Java网络编程中的TCP/IP与HTTP协议实践
【4月更文挑战第17天】Java网络编程重在TCP/IP和HTTP协议的应用。TCP提供可靠数据传输,通过Socket和ServerSocket实现;HTTP用于Web服务,常借助HttpURLConnection或Apache HttpClient。两者结合,构成网络服务基础。Java有多种高级API和框架(如Netty、Spring Boot)简化开发,助力高效、高并发的网络通信。
|
9天前
|
网络协议 安全 API
Android网络和数据交互: 什么是HTTP和HTTPS?在Android中如何进行网络请求?
HTTP和HTTPS是网络数据传输协议,HTTP基于TCP/IP,简单快速,HTTPS则是加密的HTTP,确保数据安全。在Android中,过去常用HttpURLConnection和HttpClient,但HttpClient自Android 6.0起被移除。现在推荐使用支持TLS、流式上传下载、超时配置等特性的HttpsURLConnection进行网络请求。
9 0
|
13天前
|
存储 JSON 前端开发
网络原理(4)HTTP协议(下)
网络原理(4)HTTP协议
25 0
|
1月前
|
Shell Linux 网络安全
【Shell 命令集合 网络通讯 】Linux 管理Apache HTTP服务器 httpd命令 使用指南
【Shell 命令集合 网络通讯 】Linux 管理Apache HTTP服务器 httpd命令 使用指南
30 0
|
1月前
|
Shell Linux Apache
【Shell 命令集合 网络通讯 】Linux 管理Apache HTTP服务器 apachectl命令 使用教程
【Shell 命令集合 网络通讯 】Linux 管理Apache HTTP服务器 apachectl命令 使用教程
162 1
|
1月前
|
网络协议 网络安全 API
Qt 网络编程之美:探索 URL、HTTP、服务发现与请求响应
Qt 网络编程之美:探索 URL、HTTP、服务发现与请求响应
48 1
|
1月前
|
监控 网络安全 C++
Qt 5.14.2 网络编程揭秘:构建高效HTTP客户端与文件下载器
Qt 5.14.2 网络编程揭秘:构建高效HTTP客户端与文件下载器
|
1月前
|
网络协议 算法 网络性能优化
探索HTTP/3.0:下一代网络协议的前沿
探索HTTP/3.0:下一代网络协议的前沿
26 0

热门文章

最新文章