类 ContentCachingRequestWrapper
- java.lang.Object
- javax.servlet.ServletRequestWrapper
- javax.servlet.http.HttpServletRequestWrapper
- org.springframework.web.util.ContentCachingRequestWrapper
- 所有已实现的接口:
HttpServletRequest,ServletRequest
public class ContentCachingRequestWrapper extends HttpServletRequestWrapper
HttpServletRequestwrapper 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.
方法概要
所有方法 实例方法 具体方法 修饰符和类型 方法 说明 StringgetCharacterEncoding()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.ServletInputStreamgetInputStream()The default behavior of this method is to return getInputStream() on the wrapped request object.StringgetParameter(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.BufferedReadergetReader()The default behavior of this method is to return getReader() on the wrapped request object.protected voidhandleContentOverflow(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.ServletRequestWrapperThe default behavior of this method is to return getInputStream() on the wrapped request object.- 指定者:
getInputStream在接口中ServletRequest- 覆盖:
getInputStream在类中ServletRequestWrapper- 返回:
- a
ServletInputStreamobject containing the body of the request - 抛出:
IOException- if an input or output exception occurred
getCharacterEncoding
public String getCharacterEncoding()
从类复制的说明:javax.servlet.ServletRequestWrapperThe default behavior of this method is to return getCharacterEncoding() on the wrapped request object.- 指定者:
getCharacterEncoding在接口中ServletRequest- 覆盖:
getCharacterEncoding在类中ServletRequestWrapper- 返回:
- a
Stringcontaining the name of the character encoding, ornullif the request does not specify a character encoding
getReader
public BufferedReader getReader() throws IOException
从类复制的说明:javax.servlet.ServletRequestWrapperThe default behavior of this method is to return getReader() on the wrapped request object.- 指定者:
getReader在接口中ServletRequest- 覆盖:
getReader在类中ServletRequestWrapper- 返回:
- a
BufferedReadercontaining 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.ServletRequestWrapperThe default behavior of this method is to return getParameter(String name) on the wrapped request object.- 指定者:
getParameter在接口中ServletRequest- 覆盖:
getParameter在类中ServletRequestWrapper- 参数:
name- aStringspecifying the name of the parameter- 返回:
- a
Stringrepresenting the single value of the parameter - 另请参阅:
ServletRequest.getParameterValues(java.lang.String)
getParameterMap
public Map<String,String[]> getParameterMap()
从类复制的说明:javax.servlet.ServletRequestWrapperThe 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.ServletRequestWrapperThe default behavior of this method is to return getParameterNames() on the wrapped request object.- 指定者:
getParameterNames在接口中ServletRequest- 覆盖:
getParameterNames在类中ServletRequestWrapper- 返回:
- an
EnumerationofStringobjects, eachStringcontaining the name of a request parameter; or an emptyEnumerationif the request has no parameters
getParameterValues
public String[] getParameterValues(String name)
从类复制的说明:javax.servlet.ServletRequestWrapperThe default behavior of this method is to return getParameterValues(String name) on the wrapped request object.- 指定者:
getParameterValues在接口中ServletRequest- 覆盖:
getParameterValues在类中ServletRequestWrapper- 参数:
name- aStringcontaining the name of the parameter whose value is requested- 返回:
- an array of
Stringobjects 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)