java - 无法向请求正文添加新字段
问题描述
我有一个小问题。在 PreFilter 我得到 currentContext 并且我能够像这样读取正文值:
RequestContext context = RequestContext.getCurrentContext();
context.getRequest().getParameter("key-example")).
一切都很好,但是我想在请求正文中添加一个新字段,但我无法做到这一点,因为没有这样的方法可以帮助我。我该怎么做?先感谢您!
解决方案
可以有很多方法来实现这一点。在调用方法之前使用AOP修改参数或使用Servlet Filter。
对于 Filter 的情况,它要求您创建一个请求包装类,该类扩展HttpServletRequestWrapper
并覆盖该getInputStream
方法以根据您的需要返回请求正文。
另一种更简单的方法是使用请求属性,而不是
request.setAttribute("customAttribute", value)
推荐阅读
- python - 基于可变长度从数据框列中提取字符串
- javascript - ReactJS图像上传表单文件名中的空格问题
- azure - EF Core 3.1 Cosmos DB 提供程序:找出消耗的 RU(请求单元)
- mongodb - org.springframework.boot.autoconfigure.data.mongo.MongoDataConfiguration.mongoCustomConversions 上的错误处理条件
- c# - 使用 Mock 进行依赖注入的 net core 2.0 xunit 控制器为空
- javascript - 我将如何创建一个踢服务器中每个人的机器人命令(discord.js-commando)
- linux - Elasticsearch 7.6 监听环回地址而不是服务器 IP
- python - 通过平均年度数据并创建新行,将年度数据转换为月度数据
- php - php -f 选项在 shell_exec 中不起作用
- sql - Nifi 从 ExecuteSQL 输出中提取内容