aop对请求后端的参数修改_Java后端发出post请求带参数并接收返回的json

这篇博客介绍了如何在Java后端使用AOP对请求参数进行修改,并展示了如何发送POST请求携带参数及处理返回的JSON数据。通过核心代码展示了sendPostUrl方法的实现,以及send方法调用该方法的例子。
摘要由CSDN通过智能技术生成

核心代码:

参数格式:

“key1=value1&key2=value2”

/**

*  sendUrl    (远程请求的URL)

*  param    (远程请求参数)

*  JSONObject    (远程请求返回的JSON)

*/

private JSONObject sendPostUrl(String url, String param){

PrintWriter out = null;

BufferedReader in = null;

JSONObject jsonObject = null;

String result = "";

try {

URL realUrl = new URL(url);

// 打开和URL之间的连接

URLConnection conn = realUrl.openConnection();

// 发送POST请求必须设置如下两行

conn.setDoOutput(true);

conn.setDoInput(true);

// 获取URLConnection对象对应的输出流(设置请求编码为UTF-8)

out = new PrintWriter(new OutputStreamWriter(conn.getOutputStream(), "UTF-8"));

// 发送请求参数

out.print(param);

// flush输出流的缓冲

out.flush();

// 获取请求返回数据(设置返回数据编码为UTF-

在解密POST请求参数方面,可以使用AOP来实现。通过使用过滤器或AOP统一对请求参数进行拦截,从HttpServletRequest获取加密数据后进行解密,然后将解密后的参数重新填回HttpServletRequest中,这样Controller层就可以接收到解密后的参数了。使用AOP的好处是可以对返回的结果对象进行处理,而Filter只能拿到Request与Response对象,处理不方便。此外,Spring的AOP层已经做了一些预处理,比如请求参数已经处理好,所以在这个层面进行解密处理更加合适。使用AOP的话,像 @RequestBody、@RequestParam 等注解也不会失效。\[2\]\[3\] #### 引用[.reference_title] - *1* *3* [SpringBoot 通过Filter与AOP实现请求加密解密功能](https://blog.csdn.net/afgasdg/article/details/120572937)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [zuulFilter的post请求参数解密](https://blog.csdn.net/weixin_42471125/article/details/125316126)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值