HttpServletRequest类主要处理:
1.读取和写入HTTP头标
2.取得和设置cookies
3.取得路径信息
4.标识HTTP会话。
HttpServletRequest接口中的方法
String getAuthType() 如果servlet由一个鉴定方案所保护,如HTTP基本鉴定,则返回方案名称。
String getContextPath() 返回指定servlet上下文(web应用)的URL的前缀。
Cookie[] getCookies() 返回与请求相关cookie的一个数组。
Long getDateHeader(String name) 将输出转换成适合构建Date对象的long类型取值的getHeader()的简化版。
String getHeader(String name) 返回指定的HTTP头标指。如果其由请求给出,则名字应为大小写不敏感。
Enumeration getHeaderNames() 返回请求给出的所有HTTP头标名称的权举值。
Enumeration getHeaders(String name) 返回请求给出的指定类型的所有HTTP头标的名称的枚举值,它对具有多取值的头标非常有用。
int getIntHeader(String name) 将输出转换为int取值的getHeader()的简化版。
String getMethod() 返回HTTP请求方法(例如GET、POST等等)
String getPathInfo() 返回在URL中指定的任意附加路径信息。
String getPathTranslated() 返回在URL中指定的任意附加路径信息,被子转换成一个实际路径。
String getQueryString() 返回查询字符串,即URL中?后面的部份。
String getRemoteUser() 如果用户通过鉴定,返回远程用户名,否则为null。
String getRequestedSessionId() 返回客户端的会话ID
String getRequestURI() 返回URL中一部分,从“/”开始,包括上下文,但不包括任意查询字符串。
String getServletPath() 返回请求URI上下文后的子串
HttpSession getSession() 调用getSession(true)的简化版。
HttpSession getSession(boolean create) 返回当前HTTP会话,如果不存在,则创建一个新的会话,create参数为true。
Principal getPrincipal() 如果用户通过鉴定,返回代表当前用户的java.security.Principal对象,否则为null。
boolean isRequestedSessionIdFromCookie() 如果请求的会话ID由一个Cookie对象提供,则返回true,否则为false。
boolean isRequestedSessionIdFromURL() 如果请求的会话ID在请求URL中解码,返回true,否则为false
boolean isRequestedSessionIdValid() 如果客户端返回的会话ID仍然有效,则返回true。
Boolean isUserInRole(String role) 如果当前已通过鉴定用户与指定角色相关,则返回true,如果不是或用户未通过鉴定,则返回false。
<%@page import="javax.servlet.http.HttpServletRequest"%>
out.println("Protocol: " + request.getProtocol() + "<br>");
out.println("Scheme: " + request.getScheme() + "<br>");
out.println("Server Name: " + request.getServerName() + "<br>" );
out.println("Server Port: " + request.getServerPort() + "<br>");
out.println("Protocol: " + request.getProtocol() + "<br>");
out.println("Server Info: " + getServletConfig().getServletContext().getServerInfo()+ "<br>"); out.println("Remote Addr: " + request.getRemoteAddr() + "<br>");
out.println("Remote Host: " + request.getRemoteHost() + "<br> ");
out.println("Character Encoding: " + request.getCharacterEncoding() + "<br>");
out.println("Content Length: " + request.getContentLength() + "<br>");
out.println("Content Type: "+ request.getContentType() + "<br>");
out.println("Auth Type: " + request.getAuthType() + "<br>");
out.println("HTTP Method: " + request.getMethod() + "<br>");
out.println("Path Info: " + request.getPathInfo() + "<br>");
out.println("Path Trans: " + request.getPathTranslated() + "<br>");
out.println("Query String: " + request.getQueryString() + "<br>");
out.println("Remote User: " + request.getRemoteUser() + "<br>");
out.println("Session Id: " + request.getRequestedSessionId() + "<br>");
out.println("Request URI: " + request.getRequestURI() + "<br>");
out.println("Servlet Path: " + request.getServletPath() + "<br>");
out.println("Accept: " + request.getHeader("Accept")+ "<br>");
out.println("Host: " + request.getHeader("Host") + "<br>");
out.println("Referer : " + request.getHeader("Referer") + "<br>");
out.println("Accept-Language : " + request.getHeader("Accept-Language")+ "<br>");
out.println("Accept-Encoding : " + request.getHeader("Accept-Encoding") + "<br>");
out.println("User-Agent : " + request.getHeader("User-Agent") + "<br>");
out.println("Connection : " + request.getHeader("Connection") + "<br>");
//out.println("Cookie : " + request.getHeader("Cookie") + "<br> ");
out.println("Created : " + session.getCreationTime() + "<br> ");
out.println("LastAccessed : " + session.getLastAccessedTime() + "<br>");
结果页面:
Protocol: HTTP/1.1
Scheme: http
Server Name: chery.zicp.com
Server Port: 8080
Protocol: HTTP/1.1
Server Info: Apache Tomcat/5.5.25
Remote Addr: 192.168.1.101
Remote Host: 192.168.1.101
Character Encoding: null
Content Length: -1
Content Type: null
Auth Type: null
HTTP Method: GET
Path Info: null
Path Trans: null
Query String: null
Remote User: null
Session Id: 9EF52BA6DED2337D3E091B63BC667AA8
Request URI: /service/main.jsp
Servlet Path: /service/main.jsp
Accept: */*
Host: chery.jc0553.com:8080
Referer : http://chery.zicp.com:8080/service/cheryindex.jsp
Accept-Language : zh-cn
Accept-Encoding : gzip, deflate
User-Agent : Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; TencentTraveler ; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30)
Connection : Keep-Alive
Created : 1197958062906
LastAccessed : 1197965081500
分享到:
相关推荐
### 从HttpServletRequest获取各种路径总结 #### 一、概述 在Java Web开发中,通过`HttpServletRequest`对象可以获取客户端请求的各种信息,包括但不限于路径信息。这些路径信息对于开发者来说至关重要,尤其是在...
入参的HttpServletRequest必须为:import jakarta.servlet.http.HttpServletRequest; 运行cmd,再该目录下执行: 执行步骤:java -jar jakartaee-migration-1.0.1.jar commons-fileupload-1.4.jar commons-...
【httpservletRequest的学习笔记】 在Java Web开发中,HttpServletRequest接口是Servlet API的核心组成部分,它用于封装客户端发送到服务器的HTTP请求。理解HttpServletRequest的工作原理对于任何Servlet开发者来说...
HttpServletRequest-response方法总结 HttpServletRequest和HttpServletResponse是Servlet编程中两个最重要的接口,它们提供了对HTTP请求和响应的控制和处理。下面是对HttpServletRequest和HttpServletResponse的...
httpservletrequest、httpsession的jar包,导入资源包。
以上代码展示了如何使用`HttpServletRequest`和`HttpServletResponse`接口来处理和设置请求头及响应头,这对于构建高效、安全且功能丰富的Web应用程序至关重要。通过对这些头信息的有效管理和利用,可以极大地提升...
在Servlet框架中,装饰模式能够解决特定问题,例如处理HttpServletRequest对象。 **问题与解决方案** Servlet Filter是一个强大的工具,可以在请求到达Servlet之前或之后进行拦截操作,如用户验证和内容压缩。然而...
本文将深入探讨 `HttpServletRequest` 中的 `getRequestURL()` 和 `getRequestURI()` 方法的区别。 首先,我们来看 `getRequestURI()` 方法。`getRequestURI()` 返回的是客户端发送请求时的完整统一资源标识符(URI...
分析HttpServletRequest 内容 解析出设备来源 手机 电脑 什么种类浏览器 什么系统
Java中,引入javax.servlet.http.HttpServletRequest和javax.servlet.http.HttpServletResponse包的必备jar包:org.apache.commons.httpclient.jar
在JavaWeb开发中,`HttpServletRequest`对象和会话管理是两个关键的概念,它们构成了Web应用程序交互的基础。这次我们将深入探讨这两个主题,特别是关于Cookie的使用。 `HttpServletRequest`对象是Servlet API的一...
在Java Web开发中,`HttpServletRequest`和`HttpServletResponse`是两个至关重要的接口,它们是Java Servlet API的核心组成部分,用于处理客户端(通常是Web浏览器)与服务器之间的HTTP通信。这两个接口提供了丰富的...
在实际开发中,我们经常需要对HttpServletRequest进行扩展或增强,以满足特定的业务需求,这时装饰模式就派上了用场。 装饰模式是一种设计模式,它允许我们向一个现有的对象添加新的行为或责任,而无需修改该对象的...
在Java Web应用开发中,HttpServletRequest和HttpServletResponse是两个核心的接口,它们扮演着至关重要的角色。这两个接口是Java Servlet API的一部分,为开发人员提供了处理HTTP请求和构造HTTP响应的丰富功能。...
HttpServletRequest 对象在 JavaWeb 开发中的应用 HttpServletRequest 对象是 JavaWeb 开发中最常用的对象之一,它提供了一系列方法来获取 HTTP 请求的相关信息。在本文中,我们将详细介绍 HttpServletRequest 对象...
HttpServletRequest对象在Java Web开发中扮演着至关重要的角色,它是Servlet API的一部分,用于处理客户端通过HTTP协议发送到服务器的请求。这个对象提供了丰富的接口和方法,允许开发者获取客户端的各种信息,包括...
【HttpServletRequest与HttpServletResponse详解】 在Java Web开发中,HttpServletRequest和HttpServletResponse是Servlet API中的核心接口,它们分别代表了客户端的HTTP请求和服务器的HTTP响应。每次客户端向Web...
此外,`HttpServletRequest`还提供了其他有用的功能,如获取请求的远程IP地址(`getRemoteAddr()`),获取会话(`getSession()`),检查请求是否为异步处理(`isAsyncSupported()`,`isAsyncStarted()`)等。...
`HttpServletRequest`和`HttpServletResponse`是两个核心的Servlet接口,它们是服务器与客户端之间交互的关键组件。下面我们将深入探讨这两个接口的功能、用法及实际应用案例。 `HttpServletRequest`接口代表了来自...