2

在使用Netflix的Feign向服务发出HTTP请求的弹簧引导应用程序中,是否有一种简单的方法可以自动缓存并返回这些缓存的值?缓存应该基于传递给请求的参数(类似于记录X分钟的函数)。如何在Java Spring应用程序中使用Netflix的Feign库进行HTTP请求缓存

我正在寻找类似下面的注释@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周围装饰自己的缓存它,我在想,如果有一个更快/更少的代码的方式。

回答

0

弹簧@Cacheable做你所需要的。

enter link description here

+0

感谢您的提示。对于其他可能阅读此内容的人,我发现这些帮助: [1](http://stackoverflow.com/questions/8181768/can-i-set-a-ttl-for-cacheable) [2](https: //github.com/spring-projects/spring-boot/tree/master/spring-boot-samples/spring-boot-sample-cache) – Alejandro

相关问题