如何处理HTTPPOST/GET请求

王朝other·作者佚名  2008-05-19
宽屏版  字体: |||超大  

Servlet通过下面的方法来提供服务:

实现service方法

实现HttpServlet的doMethod方法(doGet、doDelete、doOptions、 doPost、doPut、doTrace)。

通常,service方法用来从客户请求(request)中提取信息,访问扩展资源,并基于上面的信息提供响应(response)。

对于HTTP Servlets,正确提供响应的过程是首先填写响应(response)的头信息,然后从响应(response)中得到输出流,最后向输出流中写入内容信息。响应(response)头信息必须最先设置。下面将描述如何从请求(request)中获得信息和产生HTTP响应(response)。

取得客户端请求

一个HttpServletRequest对象提供到达HTTP 头部数据,也允许你获取客户端的数据。怎样获取这些数据取决于HTTP端请求方法。不管用任何HTTP方式,你都可以用 getParameterValues方法返回特定名称的参数值。对于用 HTTP GET 请求的方式,这个getQueryString方法将会返回一个可以用来分析的值。

客户端请求(request)包含了从客户端传递到Servlet的数据。所有的请求(request)都实现了ServletRequest接口。这个接口定义了一些方法访问下面的信息,如表14-1所示。

下面的代码段示范了如何使用request中的方法获得客户端信息。

HTTP Servlets使用HTTP request对象(HttpServletRequest),它包含了request URL、HTTP头信息、查询字符串,等等。HTTP request URL 包括几个部分:

http://:?

一般情况下:

如表14-2所示。

提供HTTP响应

响应(response)包含了在服务器和客户端之间传递的数据。所有的响应(response)都实现了ServletResponse接口。这个接口定义了一些方法提供给开发人员使用,如表14-3所示。

HTTP response类(HttpServletResponse)有一些代表HTTP头信息的域:

状态码用来指出响应(response)失败的原因。

Cookies在客户端存储应用相关的信息,有时cookies用来维护和标识用户的session。

Servlet首先设置响应(response)头信息,包括响应(response)的内容类别和缓冲区大小,然后在doGet方法中从响应(response)获得PrintWriter ,最后向输出中写入HTML代码,调用close()方法提交这次对客户端的响应(response)。示范代码如下:

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有