博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
spring设置html文件响应头,Spring MVC 4:拦截器无法设置响应头
阅读量:5106 次
发布时间:2019-06-13

本文共 1700 字,大约阅读时间需要 5 分钟。

我有一个Spring 4 MVC应用程序,其中有一个拦截器,用于计算请求响应周期的执行时间,我想设置一个头,如X-Runtime,其值为执行时间处理时间。但是,response.setHeader函数不起作用。当响应到达我的浏览器时,它被覆盖。Spring MVC 4:拦截器无法设置响应头

我有一个CORS过滤器,我设置请求和响应头来启用交叉原点请求,并且工作正常。

这里是我的拦截器:

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

import org.springframework.web.servlet.ModelAndView;

import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;

public class ExecuteTimeInterceptor extends HandlerInterceptorAdapter {

private static final Logger LOGGER = LoggerFactory.getLogger(ExecuteTimeInterceptor.class.getName());

@Override

public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {

long startTime = System.currentTimeMillis();

LOGGER.info("Request URL::" + request.getRequestURL().toString() + ":: Start Time=" + System.currentTimeMillis());

request.setAttribute("startTime", startTime);

return true;

}

@Override

public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {

Long startTime = (Long) request.getAttribute("startTime");

Long timeTaken = (System.currentTimeMillis() - startTime);

LOGGER.info("Request URL::" + request.getRequestURL().toString() + ":: Time Taken=" + timeTaken);

response.setHeader("X-Runtime", timeTaken.toString());

}

@Override

public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {

// Do nothing.

}

}

我在dispatcher.xml配置文件配置正确的拦截器。执行时间被slf4j正确记录,所以我可以确认拦截器本身工作正常。

任何想法为什么会发生这种情况?我使用WildFly(以前的JBoss)8.1作为我的容器/应用程序服务器。

转载地址:http://eeudv.baihongyu.com/

你可能感兴趣的文章
[物理学与PDEs]第1章习题参考解答
查看>>
麦克劳林
查看>>
Unity3D游戏开发初探—2.初步了解3D模型基础
查看>>
(二) Go的关键字
查看>>
UML
查看>>
javascript中的this,constructor ,prototype
查看>>
MVC缓存
查看>>
android-魔法泡泡动画分析(附源码)
查看>>
C++编程规范(不断更新)
查看>>
无题2
查看>>
Windows Azure Overview
查看>>
BZOJ 1013 [JSOI2008]球形空间产生器sphere
查看>>
MVC框架的实现
查看>>
js object template
查看>>
for (Sms sms : smsLists){}
查看>>
The footer tag,html5知识,底部的标签!
查看>>
C++ 之 字符 字符串
查看>>
splay
查看>>
酷炫特效的网站
查看>>
《Linux命令行与shell脚本编程大全 第3版》Linux命令行---30
查看>>