【发布时间】:2021-12-31 17:33:14
【问题描述】:
我目前对更改 Swift 在URLRequests 上的默认缓存策略不感兴趣,但我想知道某个特定请求是否已被缓存。 URLRequest 对象上是否有方法可以告诉我这一点?
对于上下文,如果 URLRequest 已被缓存,我不想显示加载屏幕(因为它会很快加载)。但是如果 URLRequest 没有被缓存,我确实想显示一个加载屏幕/圆圈,这样用户就不会在一秒钟左右盯着任何东西。
【问题讨论】:
我目前对更改 Swift 在URLRequests 上的默认缓存策略不感兴趣,但我想知道某个特定请求是否已被缓存。 URLRequest 对象上是否有方法可以告诉我这一点?
对于上下文,如果 URLRequest 已被缓存,我不想显示加载屏幕(因为它会很快加载)。但是如果 URLRequest 没有被缓存,我确实想显示一个加载屏幕/圆圈,这样用户就不会在一秒钟左右盯着任何东西。
【问题讨论】:
链接到正确来源的另一个答案。但是我发现对我有用的特定方法是 URLCache.shared 单例类上的 cachedResponse 方法。如果URLRequest 没有被缓存,则将URLRequest 对象传递给此方法将返回一个可选的--nil;如果它有值。
【讨论】: