Ios Internet数据未正确更新

Ios Internet数据未正确更新,ios,objective-c,cocoa-touch,uiwebview,Ios,Objective C,Cocoa Touch,Uiwebview,我使用互联网连接的应用程序有一个奇怪的问题。该应用程序似乎没有以正确的方式更新来自互联网的数据。我有一个简单聊天的UIWebView。当我在safari聊天室或网络浏览器中写消息时,一切都正常。在应用程序的聊天中写入内容时,即使重新加载页面,数据也不会更新 它的更新也完全不合逻辑。即使重新启动应用程序时,新数据也不会显示,然后会突然显示出来 另一个应用程序也有同样的问题,这不是由UIWebView处理的。知道可能是什么吗 示例代码: - (void) viewWillAppear:(BOOL)a

我使用互联网连接的应用程序有一个奇怪的问题。该应用程序似乎没有以正确的方式更新来自互联网的数据。我有一个简单聊天的UIWebView。当我在safari聊天室或网络浏览器中写消息时,一切都正常。在应用程序的聊天中写入内容时,即使重新加载页面,数据也不会更新

它的更新也完全不合逻辑。即使重新启动应用程序时,新数据也不会显示,然后会突然显示出来

另一个应用程序也有同样的问题,这不是由UIWebView处理的。知道可能是什么吗

示例代码:

- (void) viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];

NSString *username = [[Database singletonDataBase] currentUserName];
NSString *urlAddress = [NSString stringWithFormat:@"%@?name=%@", @"http://webapi.com/index.php", username];
NSURL *url = [NSURL URLWithString:urlAddress];
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];

[self.webView loadRequest:requestObj];

}

在应用程序委托中,使用didFinishLoading方法,将NSURLCache设置为不缓存数据:

// Remove and disable all URL Cache, but doesn't seem to affect the memory
[[NSURLCache sharedURLCache] removeAllCachedResponses];
[[NSURLCache sharedURLCache] setDiskCapacity:0];
[[NSURLCache sharedURLCache] setMemoryCapacity:0];
如果不起作用,您还可以尝试在NSURLRequest上设置缓存策略:

NSURL *url = [NSURL URLWithString:urlAddress];
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url 
                                        cachePolicy:NSURLRequestReloadIgnoringCacheData
                                    timeoutInterval: 10.0]; 

我终于找到了答案。正如我所想,我的代码没有问题。问题在于服务器端。正如他们在这篇文章中所说:

它的服务器端或代理配置似乎不正确。这使得缓存的行为异常。我尝试了另一台服务器,一切正常


希望这能帮助有同样问题的人,因为它确实浪费了我很多时间。

你能展示一些相关的代码吗?我真的不认为代码有什么问题,它必须与其他东西有关。。。但我不知道是什么。请尝试使用所需的缓存策略创建url请求。谢谢您的回答。我尝试了你的两个建议,以及所有类型的缓存策略,但它们似乎都不起作用。这不可能是Xcode中的某个设置或其他什么/