浅谈Servlet读取请求头

在Servlet读取请求头

在Servlet读取HTTP头是非常方便的,只需要调用一下HttpServletRequest 的getHeader方法即可。如果客户请求中提供了指定的头信息,getHeader返回对应的字符串;否则,返回null。部分头信息经常要用到,它们有专用的访问方法:getCookies方法返回Cookie头的内容,经解析后存放在Cookie对象的数组中,请参见后面有关Cookie章节的讨论;getAuthType和getRemoteUser方法分别读取Authorization头中的一部分内容;getDateHeader和 getIntHeader方法读取指定的头,然后返回日期值或整数值。

除了Servlet读取指定的头之外,利用getHeaderNames还可以得到请求中所有头名字的一个Enumeration对象。

***,除了查看请求头信息之外,我们还可以从请求主命令行获得一些信息。getMethod方法返回请求方法,请求方法通常是GET或者POST,但也有可能是HEAD、PUT或者DELETE。getRequestURI方法返回URI(URI是URL的从主机和端口之后到表单数据之前的那一部分)。getRequestProtocol返回请求命令的第三部分,一般是“HTTP/1.0”或者“HTTP/1.1”。

实例:输出所有的请求头

下面的Servlet实例把所有接收到的请求头和它的值以表格的形式输出。另外,该Servlet还会输出主请求命令的三个部分:请求方法,URI,协议/版本。

 
 
 
  1. package hall;
  2. import java.io.*;
  3. import javax.servlet.*;
  4. import javax.servlet.http.*;
  5. import java.util.*;
  6. public class ShowRequestHeaders extends HttpServlet {
  7. public void doGet(HttpServletRequest request,
  8. HttpServletResponse response)
  9. throws ServletException, IOException {
  10. response.setContentType("text/html");
  11. PrintWriter out = response.getWriter();
  12. String title = "显示所有请求头";
  13. out.println(ServletUtilities.headWithTitle(title) +
  14. "\n" +
  15. "
  16. " + title + "
  17. \n" +
  18. "Request Method: " +
  19. request.getMethod() + "
  20. \n" +"Request URI: " +
  21. request.getRequestURI() + "
  22. \n" +"Request Protocol: " +
  23. request.getProtocol() + "
  24. public void doPost(HttpServletRequest request,
  25. HttpServletResponse response)
  26. throws ServletException, IOException {
  27. doGet(request, response);
  28. }
  29. }

标题名称:浅谈Servlet读取请求头
文章位置:http://www.mswzjz.cn/qtweb/news11/384411.html

攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能