动态JSP包含-准备和验证允许列表的问题

cld4siwp  于 2023-08-01  发布在  其他
关注(0)|答案(1)|浏览(120)

我必须更改我的训练应用程序的源代码,以便只验证创建的allowlist中的.jsp文件。目前,逻辑工作,但没有验证页面,它看起来像这样:

<%
            String somePage = "user";
            if (request.getParameter("page") != null) {
                somePage = request.getParameter("page");
            }
        %>

        <jsp:include page="<%=\"sites/\"+somePage+\".jsp\"%>"/>

字符串
我需要创建一个allowlist,其中只包含我的webapp子包中的文件- 'sites':“user.jsp”、“interface.jsp”和“tools.jsp”。我试过这样的东西:

<%
            String somePage;
            if (request.getParameter("page") != null) {
                somePage = request.getParameter("page");
            }
        %>

        <c:if test="${somePage['page'] =='user' || somePage['page'] == 'interface' || somePage['page'] == 'tools'}">
        <jsp:include page="<%=\"sites/\"+somePage+\".jsp\"%>"/>
        </c:if>


我不知道如果问题是我的语法或完全不同的东西,你能帮助我,并指出什么是错误的,我应该如何修改代码?

d8tt03nd

d8tt03nd1#

您可以使用param.page

<c:if test="${param.page == 'user' || param.page == 'interface' || param.page == 'tools'}">

字符串

相关问题