http请求头中的字段:
HttpServletRequest类
request对象是javax.servlet.http.HttpServletRequest类的实例。每当客户端请求一个页面时,JSP引擎就会产生一个新的对象来代表这个请求。
request对象提供了一系列方法来获取HTTP请求头中的信息,包括表单数据,cookies,HTTP方法等等。
接下来将会介绍一些在JSP编程中常用的获取HTTP请求头信息的方法。详细内容请见下表:
HTTP请求头示例
在这个例子中,我们会使用HttpServletRequest类的getHeaderNames()方法来读取HTTP请求头中的字段列表。这个方法以枚举的形式返回当前HTTP请求头的字段信息。
获取Enumeration对象后,用标准的方式来遍历Enumeration对象,用hasMoreElements()方法来确定什么时候停止,用nextElement()方法来获得每个参数的名字。
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="java.io.*,java.util.*" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
</head>
<body>
<h2>HTTP 头部请求实例</h2>
<table width="100%" border="1" align="center">
<tr bgcolor="#949494">
<th>Header Name</th><th>Header Value(s)</th>
</tr>
<%
Enumeration headerNames = request.getHeaderNames();
while(headerNames.hasMoreElements()) {
String paramName = (String)headerNames.nextElement();
out.print("<tr><td>" + paramName + "</td>\n");
String paramValue = request.getHeader(paramName);
out.println("<td> " + paramValue + "</td></tr>\n");
}
%>
</table>
</body>
</html>
访问main.jsp,将会得到以下结果:
您可以在上面代码中尝试HttpServletRequest类的其它方法。