由于某些原因,我需要创建一个带有两个提交按钮的表单,这些按钮将在提交后调用不同的操作。多个提交按钮安全风险
我发现https://struts.apache.org/docs/multiple-submit-buttons.html
<s:form method="post" action="mySubmitAction">
<s:submit value="Submit"/>
<s:submit value="Clear" action="myClearAction"/>
</form>
由于我的项目是用struts 2.3.16.3下面的例子中,struts.mapper.action.prefix.enabled = true
是必要的。
但是,是否有任何风险让它回到struts 2.3.16.3? 它会在2.3.15.2中共享相同的安全问题吗?
如果是,你是否介意提供一些替代方案来使多个提交按钮在单一表单上工作? if-else
解决方案不是首选。
您可以使用javascript来处理多个按钮,并将您的数据引导至类似的动作。这是更多的工作,然后使用struts.xml。就安全问题而言:您能否对安全问题更具体? –
安全问题在[https://struts.apache.org/docs/s2-018.html](https://struts.apache.org/docs/s2-018.html)中说明。在2.3.15.3之前的Struts 2中使用'action:'前缀时,在某些情况下,这可以用来绕过安全约束。 –
要为多个按钮使用JavaScript,你的意思是触发onclick事件并动态更改动作名称?或者你的意思是使用ajax来调用它? –