Является ли NSURLCache прозрачно обрабатывать ETags, полученные сервером? Я имею в виду: автоматически ли он сохраняет ETags для каждого запроса URL-адреса и затем отправляет соответствующий IF-None-Match, когда отправляется запрос на тот же URL-адрес? Или мне нужно управлять им самостоятельно?
NSURLCache и ETags
Ответ 1
да, он обрабатывает его прозрачно, если вы установите его режим кэширования:
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:urlString]
cachePolicy: NSURLRequestUseProtocolCachePolicy
timeoutInterval:60];
Примечание: вы не можете видеть заголовок в запросе вообще, и если ответ 304 будет возвращен сервером, вы увидите только ответ 200, который он прозрачно загрузил из кеша.