Class WrapperRequest

java.lang.Object
jakarta.servlet.ServletRequestWrapper
jakarta.servlet.http.HttpServletRequestWrapper
cn.sinozg.applet.common.filter.WrapperRequest
All Implemented Interfaces:
jakarta.servlet.http.HttpServletRequest, jakarta.servlet.ServletRequest

public class WrapperRequest extends jakarta.servlet.http.HttpServletRequestWrapper
构建可重复读取inputStream的request
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private final byte[]
     
    private final cn.sinozg.applet.common.service.CipherService
     
    private final Map<String,String>
     
    private final org.slf4j.Logger
     
    private final cn.sinozg.applet.common.properties.SignValue
     

    Fields inherited from interface jakarta.servlet.http.HttpServletRequest

    BASIC_AUTH, CLIENT_CERT_AUTH, DIGEST_AUTH, FORM_AUTH
  • Constructor Summary

    Constructors
    Constructor
    Description
    WrapperRequest(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.ServletResponse response, cn.sinozg.applet.common.properties.SignValue sign, cn.sinozg.applet.common.service.CipherService cipherService)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    private byte[]
    解密请求参数
     
     
     
    jakarta.servlet.ServletInputStream
     
     

    Methods inherited from class jakarta.servlet.http.HttpServletRequestWrapper

    authenticate, changeSessionId, getAuthType, getContextPath, getCookies, getDateHeader, getHttpServletMapping, getIntHeader, getMethod, getPart, getParts, getPathInfo, getPathTranslated, getQueryString, getRemoteUser, getRequestedSessionId, getRequestURI, getRequestURL, getServletPath, getSession, getSession, getTrailerFields, getUserPrincipal, isRequestedSessionIdFromCookie, isRequestedSessionIdFromURL, isRequestedSessionIdValid, isTrailerFieldsReady, isUserInRole, login, logout, newPushBuilder, upgrade

    Methods inherited from class jakarta.servlet.ServletRequestWrapper

    getAsyncContext, getAttribute, getAttributeNames, getCharacterEncoding, getContentLength, getContentLengthLong, getContentType, getDispatcherType, getLocalAddr, getLocale, getLocales, getLocalName, getLocalPort, getParameter, getParameterMap, getParameterNames, getParameterValues, getProtocol, getProtocolRequestId, getRemoteAddr, getRemoteHost, getRemotePort, getRequest, getRequestDispatcher, getRequestId, getScheme, getServerName, getServerPort, getServletConnection, getServletContext, isAsyncStarted, isAsyncSupported, isSecure, isWrapperFor, isWrapperFor, removeAttribute, setAttribute, setCharacterEncoding, setRequest, startAsync, startAsync

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface jakarta.servlet.ServletRequest

    getAsyncContext, getAttribute, getAttributeNames, getCharacterEncoding, getContentLength, getContentLengthLong, getContentType, getDispatcherType, getLocalAddr, getLocale, getLocales, getLocalName, getLocalPort, getParameter, getParameterMap, getParameterNames, getParameterValues, getProtocol, getProtocolRequestId, getRemoteAddr, getRemoteHost, getRemotePort, getRequestDispatcher, getRequestId, getScheme, getServerName, getServerPort, getServletConnection, getServletContext, isAsyncStarted, isAsyncSupported, isSecure, removeAttribute, setAttribute, setCharacterEncoding, startAsync, startAsync
  • Field Details

    • body

      private final byte[] body
    • sign

      private final cn.sinozg.applet.common.properties.SignValue sign
    • cipherService

      private final cn.sinozg.applet.common.service.CipherService cipherService
    • log

      private final org.slf4j.Logger log
    • headerMap

      private final Map<String,String> headerMap
  • Constructor Details

    • WrapperRequest

      public WrapperRequest(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.ServletResponse response, cn.sinozg.applet.common.properties.SignValue sign, cn.sinozg.applet.common.service.CipherService cipherService) throws IOException
      Throws:
      IOException
  • Method Details

    • getReader

      public BufferedReader getReader() throws IOException
      Specified by:
      getReader in interface jakarta.servlet.ServletRequest
      Overrides:
      getReader in class jakarta.servlet.ServletRequestWrapper
      Throws:
      IOException
    • getInputStream

      public jakarta.servlet.ServletInputStream getInputStream()
      Specified by:
      getInputStream in interface jakarta.servlet.ServletRequest
      Overrides:
      getInputStream in class jakarta.servlet.ServletRequestWrapper
    • getHeader

      public String getHeader(String name)
      Specified by:
      getHeader in interface jakarta.servlet.http.HttpServletRequest
      Overrides:
      getHeader in class jakarta.servlet.http.HttpServletRequestWrapper
    • getHeaderNames

      public Enumeration<String> getHeaderNames()
      Specified by:
      getHeaderNames in interface jakarta.servlet.http.HttpServletRequest
      Overrides:
      getHeaderNames in class jakarta.servlet.http.HttpServletRequestWrapper
    • getHeaders

      public Enumeration<String> getHeaders(String name)
      Specified by:
      getHeaders in interface jakarta.servlet.http.HttpServletRequest
      Overrides:
      getHeaders in class jakarta.servlet.http.HttpServletRequestWrapper
    • decrypt

      private byte[] decrypt() throws IOException
      解密请求参数
      Returns:
      解密后的数据
      Throws:
      IOException - 异常