公共接口类HttpServletRequest继承自ServletRequest
规定request信息给HTTP servlets
The servlet容器创建了一个HttpServletRequest对象通过他可以使用servlet的方法(doGet, doPost, etc).
方法摘要:
getAuthType():
Returns the name of the authentication scheme used to protect the servlet
返回证明配置的名字用于保护servlet
getContextPath()
Returns the portion of the request URI that indicates the context of the request.
返回部分请求的URI指出这个请求的上下文关系。
getCookies()
Returns an array containing all of the Cookie objects the client sent with this request
返回一个数组包含所有的客户端发送的请求cookie对象
getDateHeader(java.lang.String name)
Returns the value of the specified request header as a long value that represents a Date object
返回指定的请求标头值并用一个长整型描绘这个日期对象。
getHeader(java.lang.String name)
Returns the value of the specified request header as a String.
返回指定的请求头文件为字符型
getHeaderNames()
Returns an enumeration of all the header names this request contains
返回这个请求容器所有头文件名用枚举的方法
getHeaders(java.lang.String name)
Returns all the values of the specified request header as an Enumeration of String objects.
返回指定请求文件头的所有值用一个字符型对象的枚举
getIntHeader(java.lang.String name)
Returns the value of the specified request header as an int.
返回指定请求头文件的值用整型
getMethod()
Returns the name of the HTTP method with which this request was made, for example, GET, POST, or PUT.
返回处理这个请求HTTP方法的的名字
getPathInfo()
Returns any extra path information associated with the URL the client sent when it made this request.
当客户端发送一个URL请求的是时候返回与其相关联的额外的信息路径
getPathTranslated()
Returns any extra path information after the servlet name but before the query string, and translates it to a real path.
在servlet名字后返回一些扩展的路径信息,但在query string前转化为他真实的地址
getQueryString()
Returns the query string that is contained in the request URL after the path.
返回query string,在包含在这个请求URL后
getRemoteUser()
Returns the login of the user making this request, if the user has been authenticated, or null if the user has not been authenticated.
返回用户使用这个请求的注册。如果这个用户已经通过验证。或者没有通过验证
getRequestedSessionId()
Returns the session ID specified by the client.
返回指定用户的session ID
getRequestURI()
Returns the part of this request's URL from the protocol name up to the query string in the first line of the HTTP request
返回部分这个请求的URL从这个协议的名字up to the query string在这个HTTP请求的第一行
getRequestURL()
Reconstructs the URL the client used to make the request
在客户端请求时重新建立URL
getServletPath()
Returns the part of this request's URL that calls the servlet.
返回一部分这个请求的URL调用servlet
getSession()
Returns the current session associated with this request, or if the request does not have a session, creates one.
返回与当前请求有关联的session,如果这个请求没有session就创建一个
getSession(boolean create)
Returns the current HttpSession associated with this request or, if if there is no current session and create is true, returns a new session
返回与当前这个请求有关联的HttpSession,如果没有当前的session就创建他为真并返回一个新的session。
getUserPrincipal()
Returns a java.security.Principal object containing the name of the current authenticated user.
返回一个java.security.Principal类型的对象包含当前通过验证的用户名称
isRequestedSessionIdFromCookie()
Checks whether the requested session ID came in as a cookie.
检查这个请求的session ID是否来自一个cookie
isRequestedSessionIdFromUrl()
Deprecated. As of Version 2.1 of the Java Servlet API, use isRequestedSessionIdFromURL() instead.
不建议使用.为Java Servlet API 2.1版. 使用isrequestedSessionIdFromURL()代替
isRequestedSessionIdFromURL()
Checks whether the requested session ID came in as part of the request URL.
检查这个session ID的请求是否来自一部分请求的URL
isRequestedSessionIdValid()
Checks whether the requested session ID is still valid
检查请求的的session ID 是否依然有效
isUserInRole(java.lang.String role)
Returns a boolean indicating whether the authenticated user is included in the specified logical "role".
返回一个布尔值标志用来判断通过验证的用户是否包含在指定的logical "role"。
Field Detail
BASIC_AUTH
public static final java.lang.String BASIC_AUTH
String identifier for Basic authentication. Value "BASIC"
字符型标识符Basic authentication。值为“BASIC”
--------------------------------------------------------------------------------
FORM_AUTH
public static final java.lang.String FORM_AUTH
String identifier for Basic authentication. Value "FORM"
字符型标识符Basic authentication。值为“FORM”
--------------------------------------------------------------------------------
CLIENT_CERT_AUTH
public static final java.lang.String CLIENT_CERT_AUTH
String identifier for Basic authentication. Value "CLIENT_CERT"
字符型标识符Basic authentication。值为“CLIENT_CERT”
--------------------------------------------------------------------------------
DIGEST_AUTH
public static final java.lang.String DIGEST_AUTH
String identifier for Basic authentication. Value "DIGEST"
字符型标识符Basic authentication。值为“DIGEST”
Method Detail
GetAuthType:
使用保护的servlet,返回the authentication配置的名字.所有的servlet都支持的基本方法。表单和客户端的识别文件。和可能增加支持的分类识别.如果servlet没有识别返回null.
与CGI的变量AUTH_TYPE相同
返回:
一个静量BASIC_AUTH, FORM_AUTH,CLIENT_CERT_AUTH,DIGEST_AUTH(相当于==比较)
标识authentication的配置.或者为null,如果请求没有通过.
GetCookies:
public Cookie[] getCookies()
返回一个数组包含客户端请求的所有cookie对象.如果没有发送任何信息,这个方法返回null.
返回:
返回包含所有请求cookies的一个数组.如果没有cookies,返回null.
GetDateHeader:
public long getDateHeader(java.lang.String name)
返回指定请求的头信息声明的一个时间对象的长整型值.使用这个方法header包含时间,如果修改一样.这个时间被返回是毫秒从1970年1月1日.
如果指定的名字没有请求,这个方法返回-1.如果header不能对日期修改,这个方法将抛出一个IllegalArgumentException异常.
Parameters:
name - 一个字符串指定header的名字
return:
一个long值声明的时间在header中毫秒数从1970.1.1或者为-1 ,如果header中没有包含头
throws:
java.lang.IllegalArgumentException - 如果header值不同包含时间.
GetHeader:
public java.lang.String get(Header java.lang.string name)
返回指定的请求的header的一个字符串的值.如果请求不包含指定名字的头,这个方法返回null。这个header的名字是case insensitive. 你可以使用这个方法来请求任何header。
Parameters:
name - 一个字符串指定头的名字
Returns:
一个字符串包含请求头的值.如果请求的头的名字不存在,那么为null.
getHeaders
public java.util.Enumeration getHeader(java.lang.String name)
返回指定请求头的所有值,为enumeration(枚举)字符串对象.一些头,如语言,发送到客户端几个头每一个值都有不同的值。发送的头用逗号分开列出.
如果请求不包含指定的名字,这个方法返回空的enumerator(枚举)。这个方法的名字是case insensitive.你可以使用这个方法与任何请求头.
Parameters:
name - 指定头名字的一个字符串
Returns:
包含指定请求头的值的一个enumerator(枚举),如果这个名字没有任何请求的头,将返回一个空的enumerator(枚举).如果容器不充许方问头的信息,返回null.
getHeaderNames
public java.util.Enumerator getHeaderNames()
返回这个请求包含的所有头名字的Enumerator(枚举).如果请求没有头,这个方法返回空的Enumerator(枚举).一些servlet容器不充许serlvet使用这个方法访问头.这个方法返回null.
Returns:
这个请求的所有头的名字的Enumerator(枚举).如果请求没有头,返回空的Enumerator,
如果servlet容器不充许servlet使用这个方法,也返回null.
getIntHeader
public int getIntHeader(java.lang.String name)
返回指定请求头的一个整型值。如果请求的名字没有头,这个方法返回-1。如果不能替换为一个整数,这个方法抛出一个NumberFormatException.这个头名字是case insensitive.
Parameters:
name - 一个字符串指定请求头的名字
Returns:
一个整型表达式请求头的值。或者-1,如果这个名字没有header
Throws:
如果头的值不能替换为一个整型,抛出java.lang.NumberformatException.
getMethod
public java.lang.String getMethod()
返回请求处理HTTP方法的名字,如,GET,POST或PUT.同CGI变量REQUEST_METHOD一样.
Returns:
一个字符串指定请求处理方法的名字.
getPathInfo()
public java.lang.String getPathInfo()
返回与URL相关的所有的路径信息在客户端发送,它处理请求时.路径信息在servlet之后但在query String之前.如果没有路径,这个方法返回null,同CGI的变量PATH_INFO.
Returns:
一个字符串,解释web容器.指定路径信息在servlet路径之后但在query string的请求URL.如果为null,如果URL没有任何路径信息.
getPathTranslated
public java.lang.String getPathTranslated()
返回路径信息在servlet的名字之后但在query string之前.转化它为一个真实的路径.同CGI的变量PATH_TRANSLATED。如果URL没有任何路径信息,这个方法返回null,web容器不能解释这个字符串.
Returns:
一个字符串指定真实的路径,或者为null,如果URL没有任何路径信息.
getContextPath
public java.lang.String getContextPath()
返回请求的URL的一部份,指出请求的上下文。这个上下文路径总是来自第一个请求的URL,这个路径用一个"/"字符开始。但不是以"/"字符结束。servlet的默认上下文,这个方法返回"".这个容器不能解释这个字符串.
Returns:
一个字符串指定请求的URL的一部份。指出请求的上下文。
getQueryString
public java.lang.String getQueryString()
返回query string,包含请求的URL在路径之后。这个方法返回null,如果URL没有query string.同CGI的变量QUERY_STRING。
Returns:
一个字符串包含query string或者null,如果URL包含空的query string.这个值不能容器不能解释.
getRemoteUser
public java.lang.String getRemoteUser()
在用户登录请求时返回,如果用户通过检证。或者null,如果用户没有通过检证。
不管用户的名字发送请求依靠浏览器和识别类型。同CGI变量REMOTE_USER。
Returns:
一个字符串指定用户处理请求的登录。或null.
isUserInRole
public boolean isUserInRole(java.lang.String role)
返回一个布尔值,标识是否检证用户包话指定的角色。组和成员数使用默认的布属描述符。如果用户没有通过检证,这个方法返回false.
Parameters:
role - 一个字符串指定角色的名字
Returns:
布尔值标识是否在用户请求到一个给定的角色。false,如果用户没有通过检证.
getUserPrincipal
public java.security.Principal getUserPrincipal()
返回java.security.Principal 对象,包含当前检证对象的名字.如果说用户没有通过检证,这个方法返回null.
Returns:
一个java.security.Principal包含用户请求的名字。为null,如果用户没有通过检证.
getRequestedsessionId
public java.lang.String getRequestedSessionId()
返回指定请户客的sessionID.目前session没有相前的ID在使用。例如:如果请求指定一个旧的session ID和servlet始新的session.这个方法获得一个新的session和一个新的ID.如果请求没有指定一个session ID,这个方法返回null.
Returns:
一个string指定session ID,或null,如果请求没有指定一个session ID.
查看:
isRequestedSessionIdValid()
getRequestURL
public java.lang.String getRequestURL()
返回请求的URL的一部份,从协议的名字上到第一次连接的HTTP请求.web容器不能解释这个字符串。如:
First line of HTTP request Returned Value
POST /some/path.html HTTPrequest /some/path.html
GET HTTP/1.0 /a.html
HEAD /xyz?a=b HTTP/1.1 /xyz
重新建造一个URL配置主机。使用HttpUtils.getRequestURL
(javax.servlet.http.HttpservleRequest);
Returns:
返回一个字符串包含URL的一部份从协议的名字上到query string.
查看:
HttpUtils.getRequestURL(javax.servlet.http.HttpServletRequest)
getRequestURL
public java.lang.StringBuffer getRequestURL
重新建立一个URL客户端使用处理请求。返回URL包含的协议,服务名,端口号和路径。但它不包括query string参数.因为这个方法返回一个StringBuffer,不是String。你可能很容易的修改这个URL,例如:填加query参数.这个方法对创建转发信息和报告错误很有用.
Returns:
一个StringBuffer对象,包含创建的URL.
getServletPath
public java.lang.String getServletPath()
调用servlet方法返回请求的URL的一部份.这个包括sevlet的名字或路径到servlet中。但是不包括任何特殊的路径信息或query string。同CGI的变量SCRIPT_NAME。
getSession
public HttpSession getSession(boolean create)
返回与请求相连的当前HttpSession,如果当前没有session和create为真,返回新的session.如果create为假,请求HttpSession失效。这个方法返回null.
要想session继续维持,你必须调用这个方法在response以前.如果容器使用cookies来维持session的完整性和请求创建一个新的session,在response是有效的时候。抛出一个IllegalStateException异常.
Parameters:
true - 创建一个新的session为这个请求,
false - 返回null,如果当前没有session。
Returns:
这个HttpSession和这个请求相关连或者为null,如果创建为false,请求的session无效.
Sess Also:
getSession()
getSession
public HttpSession getSession()
返回当前session与这个请求相关连,如果请求没有一个session,将创建它.
Returns:
HttpSession与请求相关连.
查看:
getSession(boolean)
isRequestedSessionIdValid
public boolean isRequestedSessionIdValid()
检测请求的session ID是否是有效的.
Returns:
真,如果这个请求在当前的session上下文中有一个有效的session,一个ID.假,其它.
查看:
getRequestedSessionId(), getSession(boolean), HttpSessionContext
isRequestedSessionIdFromCookie
public boolean isRequestedSessionIdFromCookie()
检测请求的sessionID是否来自cookie
Returns:
真,如果sessionID来自cookie,假,其它。
查看:
getSession(boolean)
isRequestedSessionIdFromURL
public boolean isRequestedSessionIdFromURL()
检测请求的sessionID是否来自请求的URL的一部份.
Returns:
真,如果sessionID来自请求的URL,假,其它.
查看:
getSession(boolean)
isRequestedSessionIdFromUrl
public boolean isRequestedSessionIdFromUrl()
不建议使用. Java Servlet API 2.1版. 使用isRequestedSessionIdFromURL()代替.