首页 > 解决方案 > Java spring - 从拦截的异常中获取原始请求对象

问题描述

尝试使用 spring HandlerInterceptorAdapter postHandle 发送每个 API 的响应状态代码指标:

@Override
public void postHandle(
    HttpServletRequest request,
    HttpServletResponse response,
    Object handler,
    ModelAndView modelAndView
)

与成功响应一起工作得很好,但是异常都由不同的控制器处理,所以据我所见 - spring 似乎使用路由重定向到不同的 servlet,/error因此原始请求丢失。

有没有办法从方法中获取该点的原始请求对象postHandle

我此时唯一的方向是从响应中获取原始请求,但由于HttpServletResponse没有公开,因此无法弄清楚如何去做getRequest

编辑:我需要原始请求对象而不仅仅是 url,以便我能够获取路径变量并将它们从指标名称中删除。

标签: javaspringinterceptor

解决方案


推荐阅读