Spring Boot Web - 在提交之前修改响应

时间:2018-02-19 13:16:24

标签: spring spring-boot spring-security httpresponse spring-filter

我希望在回答回复后更改控制器的响应(创建某种类型的加密/解密)。

我添加了过滤器并包装了HttpServletResponse,我的问题是:

  1. 更改响应后,我将数据截断(通常为31作为内容长度的默认值),自提交响应以来,长度可能没有变化。

  2. 即使我可以改变缓冲区的长度以使其不会被截断,我也无法知道我的响应长度仅在它返回后才知道。

  3. ResponseBodyAdvice没有帮助我太多,因为我需要知道类型,我需要在几乎每个不同类型的api上应用这个过滤器,这意味着最简单的方法是将响应体操作为字节流

  4. e.g。

    为了简单起见,我想在调用getUser()后我想要控制器不会返回" David"结果但是" RGF2aWQ =" (David在base64中) - 你可以看到这里的长度比原来的长

    由于

0 个答案:

没有答案