浏览器和服务器之间的交互:
- 交互模式是:请求-响应。
- 客户端先发出请求,服务器根据请求内容发送响应内容。客户端根据响应内容进行显示。
请求与响应的格式:
客户端发出请求的格式
- 首先服务器的地址、端口、资源地址。 请求行
- 请求头
- 请求实体
注:客户端向服务器传参,如果将参数放到请求行,即为get方式!如果将参数放到请求实体中,即为post方式!
服务器受到请求内容后发送响应内容
- 状态行(200,404,500)
- 响应头
- 响应实体
服务器如何收到请求内容?
- 建立监听。ServerSocket, s.accept()。
- 启动一个线程(轻量级的进程),为请求的客户提供服务。
- 为了封装客户端提供的请求信息,于是我定义一个对象:HttpServletRequest对象。
- 为了封装回送给客户端的响应内容,我们定义一个对象:HttpServietResponse对象。
根据请求内容调用相应的程序的过程
- 我们通过web.xml中定义的url和servlet的关系,找到相应的servlet程序。
- 于是我们定义了HttpServlet,并且增加service(HttpServletRequest req, HttpServletResponse response) 方法
- 将response对象中的信息,转译成基于http协议的响应内容。再将这些响应内容通过socket传送给客户端。