为了使用Struts2表单传递XSRF令牌,我必须将令牌标记放在所有表单中。 tiles-def中的基线jsp不具有包罗万象的形式。
您是否曾将表单标记扩展为默认包含令牌标记,或者知道某些库可以执行此操作?
我还没有探索过Freemarker模板,所以不知道这是否可行。如果没有现有的解决方案,我会尝试建立自己的解决方案。
答案 0 :(得分:1)
要从评论部分合并,
1)创建一个新主题
2)扩展" form-close.ftl"到这个
<@s.token/>
<#include "/${parameters.templateDir}/xhtml/form-close.ftl" />
在堆栈中添加tokenSession
(或token
)拦截器。
通过这些更改,所有struts表单都会添加一个struts-token,而不会在每个表单中指定<s:token>
。