|
|
|
|
You can obtain access to request headers from within a servlet: /*
* DisplayRequestHeaders.java
*
* Created on November 24, 2006, 8:26 PM
*/
package requestHeaderExamples;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Enumeration;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Displays HTTP Request Headers.
*
* @author Bryan Higgs
* @version
*/
public class DisplayRequestHeaders extends HttpServlet
{
/** Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.
* @param request servlet request
* @param response servlet response
*/
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
String docType = "<!DOCTYE html PUBLIC \"-//w3c//DTD XHTML 1.0 Strict//EN\"" +
" \"http://www.w3c.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n";
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet DisplayRequestHeaders</title>");
out.println("</head>");
out.println("<body>");
out.println("<h2>Servlet DisplayRequestHeaders at " + request.getContextPath () + "</h2>");
out.println("<h3>Request Method: " + request.getMethod() + "</h3>");
out.println("<h3>Request URI: " + request.getRequestURI() + "</h3>");
out.println("<h3>Request Protocol: " + request.getProtocol() + "</h3>");
out.println("<table border=\"1\">");
out.println(" <tr bgcolor=\"beige\">");
out.println(" <th>Name</th><th>Value</th>");
out.println(" </tr>");
Enumeration headerNames = request.getHeaderNames();
while ( headerNames.hasMoreElements() )
{
String headerName = (String)headerNames.nextElement();
out.println(" <tr><td>" + headerName + "</td>");
out.println(" <td>" + request.getHeader(headerName) + "</td>");
out.println(" </tr>");
}
out.println("</table>");
out.println("</body>");
out.println("</html>");
out.close();
}
/**
* Handles the HTTP <code>GET</code> method.
* @param request servlet request
* @param response servlet response
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
processRequest(request, response);
}
/**
* Handles the HTTP <code>POST</code> method.
* @param request servlet request
* @param response servlet response
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
processRequest(request, response);
}
/**
* Returns a short description of the servlet.
*/
public String getServletInfo()
{
return "Shows request headers";
}
}
Here's what this servlet displays:
|
| The page was last updated February 19, 2008 |