我是内容安全策略的新手。我最近在我的网络应用程序中启用了它:我有一个JSP,我有多个按钮,每个按钮都有不同的操作,我用JS的onClick事件处理不同的按钮操作,但CSP不允许像这样使用内联JS。
这是我的按钮:
<button type="submit"
onclick="form.action='${pageContext.request.contextPath}/product/edit'"
class="sbmt_bt"><fmt:message key="save" /></button>
<button type="submit"
onclick="form.action='${pageContext.request.contextPath}/product/delete';
return confirm('${deleteAlert}')" class="sbmt_bt"><fmt:message key="delete"
/></button>
<button type="submit"
onclick="form.action='${pageContext.request.contextPath}/product/add'"
class="sbmt_bt"><fmt:message key="add" /></button>
什么是符合CSP的替代方案?
这对您来说应该是一个很好的起点。正如您在示例中看到的,您必须创建一个单独的JavaScript文件,将onclick监听器中的代码放在那里,并在html文件中引用JavaScript文件。