类 ContentCachingRequestWrapper
- java.lang.Object
- javax.servlet.ServletRequestWrapper
- javax.servlet.http.HttpServletRequestWrapper
- org.springframework.web.util.ContentCachingRequestWrapper
- 所有已实现的接口:
HttpServletRequest
,ServletRequest
public class ContentCachingRequestWrapper extends HttpServletRequestWrapper
HttpServletRequest
wrapper that caches all content read from the input stream and reader, and allows this content to be retrieved via abyte array
.Used e.g. by
AbstractRequestLoggingFilter
. Note: As of Spring Framework 5.0, this wrapper is built on the Servlet 3.1 API.- 从以下版本开始:
- 4.1.3
- 作者:
- Juergen Hoeller, Brian Clozel
- 另请参阅:
ContentCachingResponseWrapper
字段概要
从接口继承的字段 javax.servlet.http.HttpServletRequest
BASIC_AUTH, CLIENT_CERT_AUTH, DIGEST_AUTH, FORM_AUTH
构造器概要
构造器 构造器 说明 ContentCachingRequestWrapper(HttpServletRequest request)
Create a new ContentCachingRequestWrapper for the given servlet request.ContentCachingRequestWrapper(HttpServletRequest request, int contentCacheLimit)
Create a new ContentCachingRequestWrapper for the given servlet request.
方法概要
所有方法 实例方法 具体方法 修饰符和类型 方法 说明 String
getCharacterEncoding()
The default behavior of this method is to return getCharacterEncoding() on the wrapped request object.byte[]
getContentAsByteArray()
Return the cached request content as a byte array.ServletInputStream
getInputStream()
The default behavior of this method is to return getInputStream() on the wrapped request object.String
getParameter(String name)
The default behavior of this method is to return getParameter(String name) on the wrapped request object.Map<String,String[]>
getParameterMap()
The default behavior of this method is to return getParameterMap() on the wrapped request object.Enumeration<String>
getParameterNames()
The default behavior of this method is to return getParameterNames() on the wrapped request object.String[]
getParameterValues(String name)
The default behavior of this method is to return getParameterValues(String name) on the wrapped request object.BufferedReader
getReader()
The default behavior of this method is to return getReader() on the wrapped request object.protected void
handleContentOverflow(int contentCacheLimit)
Template method for handling a content overflow: specifically, a request body being read that exceeds the specified content cache limit.从类继承的方法 javax.servlet.http.HttpServletRequestWrapper
authenticate, changeSessionId, getAuthType, getContextPath, getCookies, getDateHeader, getHeader, getHeaderNames, getHeaders, getHttpServletMapping, getIntHeader, getMethod, getPart, getParts, getPathInfo, getPathTranslated, getQueryString, getRemoteUser, getRequestedSessionId, getRequestURI, getRequestURL, getServletPath, getSession, getSession, getTrailerFields, getUserPrincipal, isRequestedSessionIdFromCookie, isRequestedSessionIdFromUrl, isRequestedSessionIdFromURL, isRequestedSessionIdValid, isTrailerFieldsReady, isUserInRole, login, logout, newPushBuilder, upgrade
从类继承的方法 javax.servlet.ServletRequestWrapper
getAsyncContext, getAttribute, getAttributeNames, getContentLength, getContentLengthLong, getContentType, getDispatcherType, getLocalAddr, getLocale, getLocales, getLocalName, getLocalPort, getProtocol, getRealPath, getRemoteAddr, getRemoteHost, getRemotePort, getRequest, getRequestDispatcher, getScheme, getServerName, getServerPort, getServletContext, isAsyncStarted, isAsyncSupported, isSecure, isWrapperFor, isWrapperFor, removeAttribute, setAttribute, setCharacterEncoding, setRequest, startAsync, startAsync
从类继承的方法 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
从接口继承的方法 javax.servlet.ServletRequest
getAsyncContext, getAttribute, getAttributeNames, getContentLength, getContentLengthLong, getContentType, getDispatcherType, getLocalAddr, getLocale, getLocales, getLocalName, getLocalPort, getProtocol, getRealPath, getRemoteAddr, getRemoteHost, getRemotePort, getRequestDispatcher, getScheme, getServerName, getServerPort, getServletContext, isAsyncStarted, isAsyncSupported, isSecure, removeAttribute, setAttribute, setCharacterEncoding, startAsync, startAsync
构造器详细资料
ContentCachingRequestWrapper
public ContentCachingRequestWrapper(HttpServletRequest request)
Create a new ContentCachingRequestWrapper for the given servlet request.- 参数:
request
- the original servlet request
ContentCachingRequestWrapper
public ContentCachingRequestWrapper(HttpServletRequest request, int contentCacheLimit)
Create a new ContentCachingRequestWrapper for the given servlet request.- 参数:
request
- the original servlet requestcontentCacheLimit
- the maximum number of bytes to cache per request- 从以下版本开始:
- 4.3.6
- 另请参阅:
handleContentOverflow(int)
方法详细资料
getInputStream
public ServletInputStream getInputStream() throws IOException
从类复制的说明:javax.servlet.ServletRequestWrapper
The default behavior of this method is to return getInputStream() on the wrapped request object.- 指定者:
getInputStream
在接口中ServletRequest
- 覆盖:
getInputStream
在类中ServletRequestWrapper
- 返回:
- a
ServletInputStream
object containing the body of the request - 抛出:
IOException
- if an input or output exception occurred
getCharacterEncoding
public String getCharacterEncoding()
从类复制的说明:javax.servlet.ServletRequestWrapper
The default behavior of this method is to return getCharacterEncoding() on the wrapped request object.- 指定者:
getCharacterEncoding
在接口中ServletRequest
- 覆盖:
getCharacterEncoding
在类中ServletRequestWrapper
- 返回:
- a
String
containing the name of the character encoding, ornull
if the request does not specify a character encoding
getReader
public BufferedReader getReader() throws IOException
从类复制的说明:javax.servlet.ServletRequestWrapper
The default behavior of this method is to return getReader() on the wrapped request object.- 指定者:
getReader
在接口中ServletRequest
- 覆盖:
getReader
在类中ServletRequestWrapper
- 返回:
- a
BufferedReader
containing the body of the request - 抛出:
UnsupportedEncodingException
- if the character set encoding used is not supported and the text cannot be decodedIOException
- if an input or output exception occurred- 另请参阅:
ServletRequest.getInputStream()
getParameter
public String getParameter(String name)
从类复制的说明:javax.servlet.ServletRequestWrapper
The default behavior of this method is to return getParameter(String name) on the wrapped request object.- 指定者:
getParameter
在接口中ServletRequest
- 覆盖:
getParameter
在类中ServletRequestWrapper
- 参数:
name
- aString
specifying the name of the parameter- 返回:
- a
String
representing the single value of the parameter - 另请参阅:
ServletRequest.getParameterValues(java.lang.String)
getParameterMap
public Map<String,String[]> getParameterMap()
从类复制的说明:javax.servlet.ServletRequestWrapper
The default behavior of this method is to return getParameterMap() on the wrapped request object.- 指定者:
getParameterMap
在接口中ServletRequest
- 覆盖:
getParameterMap
在类中ServletRequestWrapper
- 返回:
- an immutable java.util.Map containing parameter names as keys and parameter values as map values. The keys in the parameter map are of type String. The values in the parameter map are of type String array.
getParameterNames
public Enumeration<String> getParameterNames()
从类复制的说明:javax.servlet.ServletRequestWrapper
The default behavior of this method is to return getParameterNames() on the wrapped request object.- 指定者:
getParameterNames
在接口中ServletRequest
- 覆盖:
getParameterNames
在类中ServletRequestWrapper
- 返回:
- an
Enumeration
ofString
objects, eachString
containing the name of a request parameter; or an emptyEnumeration
if the request has no parameters
getParameterValues
public String[] getParameterValues(String name)
从类复制的说明:javax.servlet.ServletRequestWrapper
The default behavior of this method is to return getParameterValues(String name) on the wrapped request object.- 指定者:
getParameterValues
在接口中ServletRequest
- 覆盖:
getParameterValues
在类中ServletRequestWrapper
- 参数:
name
- aString
containing the name of the parameter whose value is requested- 返回:
- an array of
String
objects containing the parameter's values - 另请参阅:
ServletRequest.getParameter(java.lang.String)
getContentAsByteArray
public byte[] getContentAsByteArray()
Return the cached request content as a byte array.The returned array will never be larger than the content cache limit.
handleContentOverflow
protected void handleContentOverflow(int contentCacheLimit)
Template method for handling a content overflow: specifically, a request body being read that exceeds the specified content cache limit.The default implementation is empty. Subclasses may override this to throw a payload-too-large exception or the like.
- 参数:
contentCacheLimit
- the maximum number of bytes to cache per request which has just been exceeded- 从以下版本开始:
- 4.3.6
- 另请参阅:
ContentCachingRequestWrapper(HttpServletRequest, int)