HTTP 协议简介

HTTP(HyperText Transfer Protocol,超文本传输协议)协议是Web 应用所使用的最

主要的协议。以浏览器为界面的Web 应用程序均是以HTTP 协议为基础的请求相应模式。

浏览器作为客户端向服务器发送一个请求,服务器收到请求后,将响应返回给客户端。

HTTP 是一个无状态协议,浏览器和服务器的交互包括以下步骤。

① 浏览器向服务器请求建立TCP 连接。

② 连接建立后,浏览器发送HTTP 请求给服务器。

③ 服务器将响应内容发送给浏览器。

④ 双方关闭TCP 连接。

如果服务器支持HTTP 1.1 版本,则第 ②、③ 步可以多次执行,以便减少TCP 连接

的次数,从而提高网络效率。

HTTP 请求由请求方式、URL 和数据三部分构成,最常见的HTTP 请求是GET 请求

和POST 请求。

GET 请求仅仅给服务器发送一个URL,可以在URL 中包含参数,然后期待服务器

返回相应的内容。一个完整的GET 请求的URL 格式如下。

http://www.livebookstore.net/listBooks.jspx

与GET 请求相比,POST 请求的参数不包含在URL 中,而是以附加的消息体发送

给服务器。POST 请求的数据不会显示在浏览器的地址栏,因此用户无法看到。

由于HTTP 协议是无状态的,而Web 应用程序常常需要跟踪用户的身份,因此,服

务器通常使用以下两种方式来保存用户状态。

(1)使用Cookie 来标识用户。浏览器在第一次请求服务器时将获得服务器传递给它

的Cookie,此后的请求中,浏览器将Cookie 附加在请求中,服务器就可以识别出用户身份。

(2)通过URL 重写的方式来跟踪用户。服务器通过将响应页面中的URL 链接附加

上一个特定的标识符,就可以跟踪用户身份。

对于一个用户来说,在浏览器和服务器之间的反复的请求响应被称为一个会话。由

于服务器的资源是有限的,因此,会话有一个超时设置。如果用户长时间没有通过浏览

器请求服务器,服务器就认为此会话结束。选择一个合适的会话超时是必要的,过短的

会话会导致用户操作不便,过长的会话会导致服务器负担过重。通常,JavaEE 服务器的

默认会话超时(例如,30 分钟)是一个比较合理的设置。

在对HTTP 协议有基本了解后,我们需要了解JavaEE 的两种Web 组件标准:Servlet

和JSP。它们是整个JavaEE Web 应用程序的基础。

你可能感兴趣的:(应用服务器,浏览器,javaee,网络协议,网络应用)