V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
zhongpingjing
V2EX  ›  Java

使用拦截器对接口通信进行解密问题

  •  
  •   zhongpingjing · 147 天前 · 998 次点击
    这是一个创建于 147 天前的主题,其中的信息可能已经有所发展或是发生改变。
    想用 spring 提供的 HandlerInterceptor 拦截请求来做接口数据的解密,通过 HttpServletRequest 获取到请求参数
    解密后如何再把参数设置到 HttpServletRequest 中去?
    HttpServletRequest 只有 getParameterMap()和 getQueryString()方法,没有对应的 set 方法。

    如果通过拦截器的思路行不通,那应该通过什么方式来进行解密??
    3 条回复    2021-05-22 20:11:48 +08:00
    zhongpingjing
        1
    zhongpingjing   147 天前
    spring 也也提供一个 RequestBodyAdvice 接口可以对请求进行拦截解密,不过这个只能拦截被 @RequestBody 修饰的方法。
    但通过 url 参数或者表单提交的请求无法拦截
    securityCoding
        2
    securityCoding   147 天前
    很常见的需求,关键字自己搜索一下吧

    1. 继承 HttpServletRequestWrapper,重写父类方法
    2. 继继承 OncePerRequestFilter ,实现抽象方法
    zhongpingjing
        3
    zhongpingjing   147 天前
    @securityCoding 感谢,按照你的提示,解决了问题
    关于   ·   帮助文档   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2148 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 12:52 · PVG 20:52 · LAX 05:52 · JFK 08:52
    ♥ Do have faith in what you're doing.