如何拦截与Spring Data Rest的GET调用?



我使用@RepositoryRestResource的spring data rest,其中所有动词都自动处理系统中的所有实体。

我的项目不需要控制器。

但是我确实希望在对实体进行GET调用之前执行某些操作。在不编写自定义控制器的情况下,最好的方法是什么?

我可以在Spring Data Rest中编写事件处理程序,如@HandleAfterDelete,但没有GET处理程序。

恐怕目前没有解决方案可以在框架本身之外提供这一点。然而,有一个拉请求被讨论过,但尚未实现,因为关于findBy*方法的通用性仍然存在开放的问题。

如果您不需要通用解决方案,那么建议使用HandlerInterceptor

public class YourInterceptor extends HandlerInterceptorAdapter {
@Override
public boolean preHandle(final HttpServletRequest request, final HttpServletResponse response, final Object handler) throws Exception {
// decide on request.getMethod() what to do next
}
}

相关内容

  • 没有找到相关文章

最新更新