Servlet如何读取请求头

这篇文章将为大家详细讲解有关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,协议/版本。

package hall;   import java.io.*;  import javax.servlet.*;  import javax.servlet.http.*;  import java.util.*;   public class ShowRequestHeaders extends HttpServlet {  public void doGet(HttpServletRequest request,  HttpServletResponse response)  throws ServletException, IOException {  response.setContentType("text/html");  PrintWriter out = response.getWriter();  String title = "显示所有请求头";  out.println(ServletUtilities.headWithTitle(title) +  "\n" +  "  " + title + "  \n" +  "Request Method: " +  request.getMethod() + "  \n" +"Request URI: " +  request.getRequestURI() + "  \n" +"Request Protocol: " +  request.getProtocol() + "  public void doPost(HttpServletRequest request,  HttpServletResponse response)  throws ServletException, IOException {  doGet(request, response);  }  }

关于“Servlet如何读取请求头”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。


本文标题:Servlet如何读取请求头
网址分享:http://scyanting.com/article/jeceph.html