java - 如何在Java类中访问HTTP请求

标签 java struts2 interceptor struts2-interceptors

我想在我编写的拦截器中看到对网页的请求。我将根据传入请求中的某些值更改我的响应值。我将使用类似的东西;

String ex = request.getHeader("GET");
if(ex.contains("addHeader("a","example")"));
     response.setHeader("a","null");

这是我的索引.ft:

Your name: <@s.url value="${name}"/>
Enter your name here:<br/>
<form action="" method="get">
<input type="text" name="name" value="" />
<input type="submit" value="Submit" />
</form>

这是我的 TestInterceptor.java 类的一部分;

public class TestInterceptor implements Interceptor {
....
@Override
public String intercept(ActionInvocation ai) throws Exception {
    System.out.println("before");

    //the area where I want to write the codes I want to use above
    // I can't to reach request.getHeader(...) function in here
    String result = ai.invoke();
    System.out.println("after");
    return result;
}

什么是孤立的或使用该功能的其他方式。 谢谢你的帮助。 注意:我使用的是 Struts 框架

最佳答案

可以从ActionContext中获取

ActionContext context = ai.getInvocationContext();
HttpServletRequest request = (HttpServletRequest) context.get(HTTP_REQUEST);

关于java - 如何在Java类中访问HTTP请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57818201/

相关文章:

angularjs - 如何跳过 HTTP 请求的 angularjs 拦截器?

hadoop - 使用 Flume Serializer 生成复合 hbase rowkey

当要发送的请求是多部分请求时,Spring CSRF token 不起作用

java - Hibernate 类型与 Struts 2 的映射错误

java - jqGrid 与 Struts 2

java - play框架服务器有像apache一样的rewrite_mode吗?

dependency-injection - StructureMap 拦截器

java - Spring 将属性解析为字符串而不是另一个属性

java - 使用最小 if else 来解决

java - 使用 spring 表单在 spring mvc 中上传文件不起作用