java - Struts2 JSP中获取请求头

标签 java jsp struts2

我在操作类中设置了标题。代码如下:

public String doMyAction() {

    response.setHeader("abc","cba");
    response.addHeader("abcdefg","1234567890");

    return "target_page";

}

在我的 target_page.jsp 中,我尝试显示标题,但该值为 null。

<%= request.getHeader("abc") %>           <-- Null
<%= request.getHeader("abcdefg") %>       <-- Null
<%= response.containsHeader("abc") %>     <-- True
<s:property value="%{#request.abc}" />    <-- Empty
<s:text name="%{request.abc}" />          <-- Empty
<s:text name="%{#header.abc}" />          <-- Empty
<s:text name="%{#header['abc']}" />       <-- Empty

在开发者工具中,有我的标题。

enter image description here

在我的 struts-config.xml 中,

<action name="target_name" class="com.my.Class">
    <result name="target_page">/my/jsp/target_page.jsp</result>
</action>

为什么我无法获取在操作类中设置的请求 header ?

编辑:

如何获取操作类中设置的请求 header ?

最佳答案

响应 header 和请求 header 是不同的 header 集。

您只能在服务器端代码中设置响应 header 。 请求 header 由浏览器设置。

如果您想将数据从操作类传递到 JSP,您可以使用请求属性

关于java - Struts2 JSP中获取请求头,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27166452/

相关文章:

java - 扩展泛型类时遇到问题

java - 文件未添加到 docker 工作区

java - Servlet - java.lang.IllegalStateException : getWriter() has already been called for this response

java - 更新 cookie 的 maxage 以使其在 Struts 2 中过期

java - 具有不同 Action 类的单个 JSP

javascript - Dojo require - Firefox 上出现错误

java - 没有数组的直方图

Java:自动装箱和强制转换有什么区别?

java - 为什么WEB-INF文件夹内的jsp文件可以工作,而放在WEB-INF下的文件夹下却不能呢?

java - Netbeans Servlet