一个Web服务器也被称为Http服务器,它通过Http 协议与客户端通信,这个客户端通常指的是Web浏览器。 一个基于java的Web服务器用到两个重要的类,java.net.Socket与java.net.ServerSocket,并通过http消息通信。说白了,就是用Socket在遵照http协议的情况下进行通信,因此首先我们要了解什么是http协议以及Socket方面的知识,这是将来我们开发Web服务器的基础.
客户端发起了Http请求,那么服务端必然要响应,这就有了Http响应
Http响应:1.方法-统一资源标识符(URI)-协议/版本 2.响应的头部 3主体内容
Http:全称The Hypertext Transfer Protocol.是一种让 Web 服务器与浏览器(客户端)通过 Internet 发送与接收数据的协议。它是一个请求、响应协议--客户端发出一个请求,服务器响应这个请求。HTTP 运用可靠的 TCP 连接,通常用的 TCP 80 端口。它的第一个版本是 HTTP/0.9 ,然后被 HTTP/1.0 取代。当前的版本是 HTTP/1.1 ,由RFC2616(.pdf) 定义。Http请求:一个Http请求包括三个组成部分:1.方法-统一资源标识符(URI)-协议/版本 2.请求的头部 3主体内容
POST /servlet/default.jsp HTTP/1.1
Accept: text/plain; text/Html
Accept-Language: en-gb
Connection: Keep-Alive
Host: localhost
Referer: http://localhost/ch8/SendDetails.htm
User-Agent: Mozilla/4.0 (compatible; MSIE 4.01; Windows 98)
Content-Length: 33
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate
LastName=Franks&FirstName=Michael
客户端发起了Http请求,那么服务端必然要响应,这就有了Http响应
Http响应:1.方法-统一资源标识符(URI)-协议/版本 2.响应的头部 3主体内容
HTTP/1.1 200 OK
Server: Microsoft-IIS/4.0
Date: Mon, 3 Jan 2012 13:15:33 GMT
Content-Type: text/html
Last-Modified: Mon, 11 Jan 1998 13:23:42 GMT
Content-Length: 112