目录
概述
客户端的 HTTP 协议解析
服务端的 HTTP 协议解析
Web服务器的作用
概述
了解完 HTTP 协议的请求数据格式以及响应数据格式之后,接下来我们来讲了解 HTTP 协议的解析。
HTTP 协议的解析分为客户端和服务端两个部分,客户端浏览器中内置了解析 HTTP 协议的程序,而作为服务端开发工程师,我们需要在服务器端通过 Java 程序来接收客户端浏览器发起的请求,获取请求数据并进行解析,然后参照 HTTP 协议的响应数据格式给浏览器响应对应的数据。
客户端的 HTTP 协议解析
各大厂商已经在客户端浏览器中内置了解析 HTTP 协议的程序。当浏览器获取到响应回来的数据之后,会自动解析,从而完成这一次请求响应。浏览器里面已经内置了解析 HTTP 协议的程序,我们不需要进行操作。
服务端的 HTTP 协议解析
作为服务端开发工程师,我们需要在服务器端通过 Java 程序来接收客户端浏览器发起的请求,并获取请求数据。
读取出来的请求数据是一些字符串,其格式是固定的。我们可以参照HTTP的请求数据格式来解析请求数据。
响应数据也一样,给浏览器响应对应格式的数据。
Web服务器的作用
繁琐的手动开发:
- 如果我们真的要手动去编写一个服务端的程序来解析 HTTP 的协议,我们是需要考虑各种各样的情况的,里面的东西非常繁琐,代码量打底几万行。
外部服务器的优势:
- 我们所开发的外部程序要解析 HTTP 协议,其他所有的外部项目要开发也都需要去解析 HTTP 协议。而 HTTP 协议是标准的、统一固定的,所以这部分解析 HTTP 协议的代码也是非常通用的。
- 有很多公司已经把这些代码都写好了,而且还封装到了一个软件程序当中,供我们来使用。这个软件就是我们所说的 Web 服务器。
- Web 服务器软件有很多,比如 Jetty、WebLogic、WebSphere 以及最受欢迎的 Apache 基金会下的 Tomcat 服务器。这些外部服务器本质上就是一个软件程序,就是对 HTTP 协议进行了封装,程序员不必直接对 HTTP 协议进行操作,因为毕竟是比较繁琐的。
- 如果有了这些外部服务器,HTTP 协议的解析和处理的代码我们都不用去做了,开发人员只需要关注我们当前项目的业务逻辑实现就可以了,这样就使 Web 程序的开发更加简单、便捷、高效。
后续我们就会去了解我们目前最为流行的一款 Web 服务器 ——Tomcat。
END
学习自:黑马程序员——JavaWeb课程