Хорошо, поэтому после некоторого роуминга по Интернету и попытки найти ответ на мой вопрос вот что я придумал:
NSString *dataFromInternet = [[NSString alloc] initWithContentsOfURL:url
usedEncoding:&encoding
error:&error];
Выше код, похоже, использует кеш.Чтобы получать данные из Интернета и не иметь всех проблем, которые публикуются в вопросе, вы должны использовать другой объект.
NSData* data = [[NSData alloc] initWithContentsOfURL:url options:NSUncachedRead error:&error];
NSString *dataFromInternet = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
Что происходит в приведенном выше примере кода?Вы получаете данные из Интернета почти так же, как и с NSString, за исключением того, что вы указываете следующее: «options: NSUncachedRead» - это означает, что он не будет кэшировать данные и всегда будет считывать самые последние и самые лучшие данные - при условии, что интернет работает.
Как только вы получили данные, при желании вы можете преобразовать их в NSString.Мне нужен NSString, поэтому я преобразовал его обратно в то, что я хочу.В противном случае все проблемы в оригинальном сообщении будут решены!
Я могу отключить аэропорт на моем Mac, и данные не будут получены, и как только я включу аэропорт, данные снова будут передаваться.Очень просто и прекрасно работает для меня.
Спасибо.