【发布时间】:2017-12-29 12:55:28
【问题描述】:
我正在努力实现的目标
我希望能够在特定端点方法返回其值后处理对 Spring RestController 的 HTTP 请求的结果。例如。我有:
GET /customer/{id}
这通常只返回一个自定义资源。我在 RestController 中定义的端点只是返回一个客户对象。
我希望能够修改根据此返回结果制作的 HttpEntity 响应。特别是,我想在这个后处理器中完成所有 HATEOAS 工作并将其包装在我的父对象中。
实现这一目标的最佳方法是什么?我会包括我尝试过的内容,但我想不出任何可以干净利落地完成的方式。
在实现 JAX-RS 的框架中,您需要做的就是实现 ContainerResponseFilter 接口,然后您可以将它添加到您的 REST 服务器。使用 Jersey OR CXF 很容易做到这一点。
Spring REST 中有 ContainerResponseFilter 的概念吗?
【问题讨论】:
-
您可以为特定的 REST Controller 方法添加 After 建议并执行您的特定处理。
-
以前从未使用过 AOP。有我的例子吗?
-
另外,这可能行不通。我想将我的 Customer 对象包装在另一个对象中,并将其作为 HttpEntity 的一部分返回
标签: java spring rest spring-mvc jax-rs