当前位置: 首页 > 面试题库 >

Spring 3 Web请求拦截器-如何获取BindingResult?

林英朗
2023-03-14
问题内容

我真的很感谢Spring 3阳极驱动的Web控制器映射

我有很多带有类似签名的控制器:

@RequestMapping(value = "solicitation/create",method = RequestMethod.POST)
public String handleSubmitForm(Model model, @ModelAttribute("solicitation") Solicitation  solicitation, BindingResult result)

但是我的问题是,我想编写一个拦截器,该拦截器在处理后会通过BindingResults-如何从HttpRequest或HttpResponse中获取它们?

因为intercpetor方法具有相同的签名

public boolean postHandle(HttpServletRequest request, HttpServletResponse response, Object handler)

问题答案:

因此,在@Axtavt的大力帮助下,我得出了结论,即可以在postHandle方法中从ModelAndView绑定Bind reuslt:

void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) {
  String key = BindingResult.MODEL_KEY_PREFIX + "commandName";
  BindingResult br = (BindingResult) modelAndView.getModel().get(key);
}


 类似资料:
  • 我在我的项目中使用。所有POST数据都以格式发送,并在服务器端解编入各自的bean中。类似于这样: 向服务器发送请求: 我从这里得到了REST拦截器的实现。 我想访问拦截器中的有效载荷(请求体)。由于数据是JSON格式的,因此不能作为请求参数访问。是否有一种方法可以在拦截器方法中获得请求正文?请指教。

  • 问题内容: 我在我的项目中使用。所有POST数据都以格式发送,并在服务器端解组到各自的bean中。像这样: 向服务器发送请求: 有效负载: 服务器端: MangaBean: 在控制台上输出: 我从这里获得了REST-interceptor实现。 我想访问拦截器中的有效负载(请求主体)。由于数据为JSON格式,因此无法将其作为请求参数进行访问。 有没有办法在拦截器方法中获取请求正文? 请指教。 问题

  • 一、拦截请求 mitmproxy的强大功能是拦截请求。拦截的请求将暂停,以便用户可以在将请求发送到服务器之前修改(或丢弃)该请求。mitmproxy的set intercept命令配置拦截。i默认情况下,该命令绑定到快捷方式。 通常不希望拦截所有请求,因为它会不断中断您的浏览。因此,mitmproxy希望将流过滤器表达式作为set intercept选择性拦截请求的第一个参数。在下面的教程中,我们

  • 问题内容: 我知道如何拦截所有请求,但是我只想拦截来自我资源的请求。 有谁知道如何做到这一点? 问题答案: 如果只想拦截来自特定资源的请求,则可以使用可选的action 属性。Angular的文档请参见此处(用法>操作) 的JavaScript Plunker:http ://plnkr.co/edit/xjJH1rdJyB6vvpDACJOT?p=preview

  • 配置拦截器 declarations: [ AppComponent ], HttpClientModule ], providers: [ [ { provide: HTTP_INTERCEPTORS, useClass: AuthInterceptor, multi: true } ] bootstrap:

  • 在 imi 中更加推荐使用 AOP 来拦截请求。 不要忘记把 Aspect 类加入 beanScan! Demo <?php namespace ImiApp\ApiServer\Aop; use Imi\RequestContext; use Imi\Aop\Annotation\Around; use Imi\Aop\Annotation\Aspect; use Imi\Aop\Annota