这是一个有效的例子。如果非要我猜的话,这是在中国发生的事情
super.postHandle(request, response, handler, modelAndView);
网络配置
@Component
public class WebConfig implements WebMvcConfigurer {
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(new CustomHandleInterceptor());
}
}
拦截器
@Component
public class CustomHandleInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
response.setHeader("pre","works");
return true;
}
@Override
public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
response.setHeader("post","works");
}
@Override
public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
response.setHeader("complete","works");
}
}
@Controller
public class GreetingController {
@GetMapping("/greeting")
public String greetingMethod(@RequestParam(name="name", required=false, defaultValue="World") String name, Model model) {
model.addAttribute("name", name);
return "greeting";
}
}
响应头
$ curl -I http://localhost:8080/greeting
HTTP/1.1 200
pre: works
post: works
complete: works
Content-Type: text/html;charset=UTF-8
Content-Language: en-US
Content-Length: 212
Date: Fri, 15 Mar 2019 01:42:08 GMT