java获取post请求的密文数据_基于RequestBodyAdvice和ResponseBodyAdvice来实现spring中参数的加密和解密...

本文介绍了如何利用Spring的RequestBodyAdvice和ResponseBodyAdvice接口,实现对POST请求参数的自动解密和返回值的自动加密。通过自定义注解@Encrypt,标记需要加密或解密的方法,并在对应的Advice实现类中处理加密和解密逻辑,简化了代码并提高了安全性。
摘要由CSDN通过智能技术生成

在日常开发中,有时候我们经常需要和第三方接口打交道,有时候是我们调用别人的第三方接口,有时候是别人在调用我们的第三方接口,那么为了调用接口的安全性,一般都会对传输的数据进行加密操作,如果每个接口都由我们自己去手动加密和解密,那么工作量太大而且代码冗余。那么有没有简单的方法,借助 spring 提供的  RequestBodyAdvice 和 ResponseBodyAdvice 可以实现解密和加密操作。

需求:

1,后台方法上如果有@Encrypt注解和@RequestBody修饰的方法,需要进行参数的解密

2,后台方法上如果有@Encrypt注解和@ResponseBody修饰的方法,需要进行参数的加密

3,加密和解密规则

加密:对返回的值中增加-encrypt值

解密:对传入的值中删除-encrypt值

注:

1,@Encrypt 为自定义的一个注解。

2,此处为了简单,就使用删除或增加-encrypt这个,实际情况下可以使用复杂的加解密规则

前置知识:

RequestBodyAdvice:在 sping 4.2 新加入的一个接口,它可以使用在@RequestBody 或 HttpEntity 修改的参数之前进行参数的处理,比如进行参数的解密。

ResponseBodyAdvice:在 spring 4.1 新加入的一个接口,在消息体被HttpMessageConverter写入之前允许Controller 中 @ResponseBody修饰的方法或Res

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值