JavaWeb开发基础7个Web术语解析

本书作者:测试开发刚哥,文章版权归个人所有,未经授权请勿转载。 7个Web术语 Website: static vs dynamic HTTP HTTP Requests GET vs POST Servlet Container Server: Web vs Application Content Type Website: static vs dynamic 网站内容包括文本、图片、音频、视频,通过URL来访问。网站分为静态网站和动态网站。 静态网站 静态网站是用HTML编写的,所有内容都包含在网页内,就像是打印出来的一样。 动态网站 动态网站分为客户端和服务端,内容是可以动态变化的,可以根据用户请求动态更新网页内容。服务端语言有Servlet、ASP.NET等。 HTTP HTTP是Hypertext Transfer Protocol缩写,超文本传输协议,位于OSI网络分层模型的应用层(第七层)。 超文本(Hypertext)是一种文本形式,它不仅包含普通的文本内容,还包含了可以链接到其他文本或资源的元素。这些链接通常称为“超链接”(Hyperlinks)。超文本的概念由Ted Nelson在1960年代提出,并在万维网(World Wide Web)的发展中得到了广泛应用。 HTTP具有以下特点: media independent:支持任何类型的媒体内容 connectionless:无连接,客户端发送请求后,就断开了连接 stateless:无状态,服务端不会保留客户端请求的状态,不知道谁是谁 HTTP是基于TCP/IP协议的,通过TCP建立可靠连接。为什么说HTTP是无连接的,但又是基于TCP可靠连接的?如果想要可靠地传输数据,那么就必须要有稳定可靠的连接,保证数据不丢失,这个连接就是TCP连接。HTTP正是通过TCP连接来发送和接收数据的。 在HTTP/1.0中,每次请求都会建立一个新的TCP连接,完成请求后立即关闭连接。在HTTP/1.1中,引入了持久连接,允许多个请求/响应在同一个TCP连接上进行,但每个请求/响应对话仍然是独立的。HTTP/1.1是持久连接,那么还能叫做无连接吗?是的,仍然是无连接。持久连接是通过 Connection: keep-alive 头部实现的,允许连接在一段时间内保持打开状态,不需要重新建立和关闭连接。无连接的本质是每个请求/响应对话都是独立的,强调的是独立。 HTTP Requests HTTP请求是客户端发送给服务端的请求,包含以下内容: The Request-line(请求行) The analysis of source IP address, proxy and port(源信息) The analysis of destination IP address, protocol, port and host(目标信息) The Requested URI (Uniform Resource Identifier)(链接) The Request method and Content(方法和内容) The User-Agent header(请求头) The Connection control header(请求头) The Cache control header(请求头) 可以在浏览器中通过F12开发者工具,查看HTTP请求信息。 ...