【发布时间】:2023-03-19 23:59:01
【问题描述】:
有人知道是否可以在 Struts2 拦截器中更改/删除请求参数值吗?
请求参数Map 是UnmodifiableMap 的一个实例,因此它看起来无法在拦截器中进行操作。
更新:
我正在使用 Liferay,所以 uParamsMap 将成为 UnmodifiableMap
public String intercept(ActionInvocation invocation) throws Exception {
final ActionContext context = invocation.getInvocationContext();
PortletRequest request = (PortletRequest) context.get(REQUEST);
Map<String, String[]> uParamsMap = request.getParameterMap();
return invocation.invoke();
}
【问题讨论】:
-
你到底想对参数做什么?您可以排除它们。
-
我有一个用于输入验证的拦截器,并且想要更改可疑的拦截器。我不想完全删除它们,因为其中一些可能是合法的
-
忘了说我正在使用 Liferay
-
invocation.getInvocationContext().getParameters(). -
我将尝试在
InvocationContext参数中设置值,而不是PortletRequest。谢谢
标签: java struts2 request liferay-6 interceptor