[ Team LiB ] |
![]() ![]() |
Recipe 18.1 Examining HTTP Request Headers in a ServletProblemYou want to examine the HTTP request headers in a servlet. SolutionUse the javax.servlet.http.HttpServletRequest.getHeaderNames( ) and getHeader( ) methods to access the names and values of various request headers. DiscussionThe HttpServletRequest.getHeaderNames( ) method returns all of the request header names for an incoming request. You can then obtain the value of a specific header by providing the header name to the method HttpServletRequest.getHeader( ) method. Example 18-1 gets an Enumeration of header names in the servlet's doGet( ) method, and then displays each header and value on its own line in the resulting HTML page. Example 18-1. A servlet displays request headers and valuespackage com.jspservletcookbook; import java.util.Enumeration; import javax.servlet.*; import javax.servlet.http.*; public class RequestHeaderView extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, java.io.IOException { //get an Enumeration of all the request header names Enumeration enum = request.getHeaderNames( ); response.setContentType("text/html"); java.io.PrintWriter out = response.getWriter( ); out.println( "<html><head><title>Request Header View</title></head><body>"); out.println("<h2>Request Headers</h2>"); String header = null; //display each request header name and value while (enum.hasMoreElements( )){ header = (String) enum.nextElement( ); //getHeader returns null if a request header of that name does not //exist in the request out.println("<strong>"+header+"</strong>"+": "+ request.getHeader(header)+"<br>" ); } out.println("</body></html>"); } //doGet } Figure 18-1 shows the RequestHeaderView servlet's output. Figure 18-1. A servlet shows the request header names and values![]() See AlsoRecipe 18.2 on examining request headers in a JSP; Recipe 18.3 on using a filter to wrap the request and forward it along the filter chain; Recipe 18.6 on using a listener to track requests; Chapter 7 on handling request parameters and JavaBean properties with servlets, JSPs, and filters. ![]() |
[ Team LiB ] |
![]() ![]() |