Class ParamsInterceptor

java.lang.Object
cn.sinozg.applet.common.interceptor.ParamsInterceptor
All Implemented Interfaces:
org.springframework.web.servlet.HandlerInterceptor

@Component public class ParamsInterceptor extends Object implements org.springframework.web.servlet.HandlerInterceptor
防止重复提交 参数签名拦截器
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private cn.sinozg.applet.common.properties.AppValue
     
    private cn.sinozg.applet.common.service.CipherService
     
    private final org.slf4j.Logger
     
    private cn.sinozg.applet.common.service.FrameworkAuthService
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    afterCompletion(@NotNull jakarta.servlet.http.HttpServletRequest request, @NotNull jakarta.servlet.http.HttpServletResponse response, @NotNull Object handler, Exception ex)
     
    private String
    getRequestParams(jakarta.servlet.http.HttpServletRequest request)
    获取到 get请求 参数 进行签名
    private void
    httpError(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response, String code)
     
    private boolean
    isRepeatSubmit(jakarta.servlet.http.HttpServletRequest request, RepeatSubmit rs, String json)
    验证是否重复提交由子类实现具体的防重复提交的规则
    void
    postHandle(@NotNull jakarta.servlet.http.HttpServletRequest request, @NotNull jakarta.servlet.http.HttpServletResponse response, @NotNull Object handler, org.springframework.web.servlet.ModelAndView modelAndView)
     
    boolean
    preHandle(@NotNull jakarta.servlet.http.HttpServletRequest request, @NotNull jakarta.servlet.http.HttpServletResponse response, @NotNull Object handler)
     
    private boolean
    signParams(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response, String params)
    参数签名校验

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • app

      private cn.sinozg.applet.common.properties.AppValue app
    • cipherService

      private cn.sinozg.applet.common.service.CipherService cipherService
    • tokenService

      private cn.sinozg.applet.common.service.FrameworkAuthService tokenService
    • log

      private final org.slf4j.Logger log
  • Constructor Details

    • ParamsInterceptor

      public ParamsInterceptor()
  • Method Details

    • preHandle

      public boolean preHandle(@NotNull @NotNull jakarta.servlet.http.HttpServletRequest request, @NotNull @NotNull jakarta.servlet.http.HttpServletResponse response, @NotNull @NotNull Object handler) throws Exception
      Specified by:
      preHandle in interface org.springframework.web.servlet.HandlerInterceptor
      Throws:
      Exception
    • postHandle

      public void postHandle(@NotNull @NotNull jakarta.servlet.http.HttpServletRequest request, @NotNull @NotNull jakarta.servlet.http.HttpServletResponse response, @NotNull @NotNull Object handler, org.springframework.web.servlet.ModelAndView modelAndView) throws Exception
      Specified by:
      postHandle in interface org.springframework.web.servlet.HandlerInterceptor
      Throws:
      Exception
    • afterCompletion

      public void afterCompletion(@NotNull @NotNull jakarta.servlet.http.HttpServletRequest request, @NotNull @NotNull jakarta.servlet.http.HttpServletResponse response, @NotNull @NotNull Object handler, Exception ex) throws Exception
      Specified by:
      afterCompletion in interface org.springframework.web.servlet.HandlerInterceptor
      Throws:
      Exception
    • getRequestParams

      private String getRequestParams(jakarta.servlet.http.HttpServletRequest request)
      获取到 get请求 参数 进行签名
      Parameters:
      request - 请求参数
      Returns:
      get请求的参数
    • signParams

      private boolean signParams(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response, String params)
      参数签名校验
      Parameters:
      request - 请求request
      response - 返回
      params - 请求参数
      Returns:
      签名是否正确
    • isRepeatSubmit

      private boolean isRepeatSubmit(jakarta.servlet.http.HttpServletRequest request, RepeatSubmit rs, String json)
      验证是否重复提交由子类实现具体的防重复提交的规则
      Parameters:
      request - 请求request
      rs - 自定义注解
      json - 请求参数
      Returns:
      是否重复提交
    • httpError

      private void httpError(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response, String code)