在使用 Netflix 的 Feign 向服务发出 HTTP 请求的 Spring Boot 应用程序中,是否有一种简单的方法可以自动缓存并返回这些缓存值?缓存应该基于传递给请求的参数(类似于记忆一个函数 X 分钟)。
我正在寻找类似以下@Cache
注释的内容:
@Component
@FeignClient(value = "facebook", url = "${auth.facebook.url}")
public interface FacebookClient {
@Cache(600) // Something like this.
@RequestMapping(method = RequestMethod.GET, value = "/debug_token?input_token={input_token}&access_token={access_token}")
Map debugToken(@PathVariable("input_token") String inputToken, @PathVariable("access_token") String appToken);
}
当然,我可以使用 . 周围的装饰器自己缓存它FacebookClient
,我想知道是否有更快/更少的代码方式。