1
我在一个Ionic应用中使用Angular $http.get()
来调用外部服务的API调用,并实现了CacheFactory
插件以使缓存更加可配置的。
一切工作正常,如果我向相同的端点重复API请求,CacheFactory返回缓存的响应,并且在浏览器控制台中看不到实际的HTTP请求,直到缓存过期时间过去。
但我想能够确定我正在使用的数据是来自缓存还是来自新的HTTP请求。我怎样才能做到这一点?
有控制台登录的$http.get()
输出我看不出任何有用的东西,其实响应对象无论从高速缓存或HTTP调用是相同的。
任何想法感激地收到。
只是一个想法,因为我没有时间玩这个想法,但 - 可以一个HTTP拦截器帮助?我想知道当缓存处理请求时它们是否会被忽略(这可以帮助您推断缓存是否最近用于特定请求);或者,如果您可以使用一个将时间戳附加到标题属性或可能存在于缓存中的某个东西,并且您可以检查以查看请求是否“新鲜”... – JcT
否则,我注意到http:/ /jmdobry.github.io/angular-cache/(是'角cache'的'CacheFactory'插件,您是指什么?)有一个'onExpire'回调我认为可能是一些使用的... – JcT
我想检查如果$ http cache已经有一个与请求相关的密钥可能会有所帮助。 – n1313