假设我正在请求/products.json
,它返回带有X个产品的JSON数组。每个都在/product/[id].json
处提供。是否有可能使siesta缓存信息而不是为每个产品提出请求?或者我是否必须将我的模型与其资源分开?
答案 0 :(得分:1)
这里有一个简短的讨论:
https://github.com/bustoutsolutions/siesta/issues/156
由于Siesta目前存在,每个URL都是一个单独的资源,具有单独的缓存状态。但是,您可以手动将索引/列表/搜索资源中的更改传播到相应的资源,以获取其各自的结果:
childResource.addObserver(self)
parentResource.addObserver(owner: self) {
if case .newData = $1 {
childResource.invalidate()
// Delayed refresh prevents redundant load if multiple
// children trigger a refresh on the same parent
DispatchQueue.main.async {
childResource.loadIfNeeded()
}
}
}
Github发布讨论更多背景。