Скачать на iPhone Кэширование? - PullRequest
1 голос
/ 11 июля 2009

Я чувствовал, что у меня те же проблемы, что и здесь . Но все, что я пытаюсь, похоже, не работает.

Программа работает следующим образом:

  • Я спрашиваю учетные данные пользователя (имя пользователя / пароль)
  • Затем я делаю несколько звонков на сервер, загружая информацию.
  • Когда он закончится, я показываю группу пользователей, пользователь нажимает на нее, а затем запрашивается пароль для этой учетной записи
  • Затем я делаю еще один запрос к серверу и проверяю, получаю ли я верную информацию (следовательно, правильность только что введенного имени пользователя / пароля)

Проблема в том, что последний вызов похож (тот же URL, разные учетные данные) на тот, который я делаю при первоначальной загрузке. Независимо от того, что пользователь вводит для вторых учетных данных, «правильная» информация возвращается. Я думаю, что это потому, что он кэширует ответ, но я не могу понять, как не дать ему это сделать.

У меня есть класс, который устанавливает соединение и возвращает загруженные данные. И я делаю новый класс для каждого соединения. Так что я не совсем уверен, почему это сохранение данных.

У меня есть NSMutableURLRequest, в котором я делаю следующее:

 [theRequest setCachePolicy:NSURLRequestReloadIgnoringLocalCacheData];

(я тоже пробовал, NSURLRequestReloadRevalidatingCacheData и NSURLRequestReloadIgnoringLocalAndRemoteCacheData)

Я также реализовал функции:

- (NSCachedURLResponse *)connection:(NSURLConnection *)connection   
                  willCacheResponse:(NSCachedURLResponse *)cachedResponse {
return nil;
}

- (BOOL)connectionShouldUseCredentialStorage:(NSURLConnection *)connection {
return NO;
}

С последним я не совсем понимаю. Так я устал ДА и НЕТ. И я пробовал различные политики кэширования NSURLRequest.

Любая помощь по моей проблеме была бы очень полезной. Спасибо.

1 Ответ

2 голосов
/ 12 июля 2009

Просто предположение, но с помощью

NSURLRequestReloadIgnoringLocalAndRemoteCacheData

вместо

NSURLRequestReloadIgnoringLocalCacheData

какая разница?

...