【问题标题】:How to set HTTP header in JSP or on index.jsp?如何在 JSP 或 index.jsp 中设置 HTTP 标头?
【发布时间】:2018-08-01 06:57:42
【问题描述】:

如何在index.jsp中设置HTTP头?

我已经完成了 servlet 过滤器编码来设置HttpHeader 每当任何请求像*.do 一样。

但是index.java是初始JSP页面,当*.do动作命中时不会被调用。

所以我想最初设置下面的标题:

response.addHeader("X-Frame-Options", "SAMEORIGIN"); 

【问题讨论】:

    标签: java html http struts servlet-filters


    【解决方案1】:

    索引页index.jsp 不受Struts 管理。但是,Struts 可以将其作为视图返回。

    当请求不是通过 Struts 到达索引页面 index.jsp 时,您不能通过过滤器为响应设置标题。您应该只使用索引页面来重定向到操作。然后您可以使用过滤器设置标题。

    您可以使用response 对象重定向到类似this 答案中的操作。

    【讨论】:

    • 所以在 index.jsp 中 setHeader 是不可能的还是没用?因为 whiteHite 安全人员在我们的索引页面中创建了漏洞,说 response.addHeader("X-Frame-Options", "SAMEORIGIN");第一个登录页面不存在
    • 可以在action中设置headers,而不是在jsp中。
    • 是的,我们必须采取行动。所以我在我的过滤器中设置了相同的设置,并在我的登录页面导致 login.do 操作被命中后设置。但是在我们的登录网页的第一页上看不到它。他们正在浏览器 >f12 > 开发人员工具 > 网络 > 响应标头中检查 x-margin 是否存在
    • 要使其可见,您应该使用 response.sendRedirect() 或使用 http 刷新将请求重定向到操作。然后该操作将返回 jsp 作为结果。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-25
    • 2011-06-24
    • 2014-05-16
    • 2020-04-17
    • 2021-03-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多