Код: Выделить всё
let customCache: URLCache = {
let cacheSizeMemory = 512 * 1024 * 1024
let cacheSizeDisk = 512 * 1024 * 1024
return URLCache(memoryCapacity: cacheSizeMemory, diskCapacity: cacheSizeDisk, diskPath: "serverTest")
}()
let customSession: URLSession = {
// Create a custom URLSessionConfiguration
let sessionConfiguration = URLSessionConfiguration.default
sessionConfiguration.urlCache = customCache
sessionConfiguration.requestCachePolicy = .useProtocolCachePolicy
// Create a custom URLSession with the configuration
let customSession = URLSession(configuration: sessionConfiguration)
return customSession
}()
Код: Выделить всё
< content-length: 93828673
< cache-control: public, max-age=300
Теперь, когда я меняю эти переменные на следующие, кеш работает:
< pre class="lang-swift Prettyprint-override">
Код: Выделить всё
let cacheSizeMemory = 512 * 1024 * 1024 * 5
let cacheSizeDisk = 512 * 1024 * 1024 * 5
Устанавливает ли Apple какой-то тип буфера или что-то в этом роде, где один ответ может занимать только x% кеша или что-то в этом роде? Я не могу найти никакой документации, подтверждающей это, но это единственное объяснение, которое я могу придумать.
Подробнее здесь: https://stackoverflow.com/questions/791 ... eater-than
Мобильная версия