JVi*_*Vic 4 controller filter spring-boot
请帮助我,或展示其他方法来解决此问题。
@RestController
@RequestMapping("/users")
public class UserController {
@RequestMapping("/login")
public String logIn() {
return "";
}
@RequestMapping("/getUserData")
@FilterThisRequest
public String getUserData(@PathVariable Long userId) {
return user;
}
}
Run Code Online (Sandbox Code Playgroud)
我有AuthFilter extends GenericFilterBean一个特定的逻辑。如何使过滤器仅在具有 的方法之前执行@FilterThisRequest?或者有更好的做法来解决这个问题?
检查 FilterRegistrationBean 参考指南https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#boot-features-embedded-container-servlets-filters-listeners-beans。
通过 @Configuration 类使 FilterRegistrationBean 对 Spring 可用,下面的示例将确保 authFilter 仅针对 /getUserData 运行。请注意,它是基于 URL(而非方法)的过滤。
@Autowired AuthFilter authfilter;
....
....
@Bean
public FilterRegistrationBean authFilterRegistration() {
FilterRegistrationBean registration = new FilterRegistrationBean(authfilter);
registration.addUrlPatterns("/web-app-name/getUserData/");
return registration;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5578 次 |
| 最近记录: |