【问题标题】:iOS - initWithContentsOfURL downloading old version of fileiOS - initWithContentsOfURL 下载旧版本文件
【发布时间】:2014-04-02 19:46:19
【问题描述】:

我的应用程序从服务器下载文本文件以确定文件的内容。有一个问题,我正在更改服务器上的文件,编辑它们的内容,但是当应用程序下载它们时,文件没有改变。在浏览器中加载文件表明更改确实生效了。不知何故,该应用程序正在访问不应该存在的文件的旧版本。这是我的代码:

 -(NSArray *)writeFile:(NSString *)section :(NSString *)item{
      NSString *fileName = [NSString stringWithFormat:@"http://myurl.com/%@/%@.txt", section, item];
    fileName = [fileName stringByReplacingOccurrencesOfString:@" "
                                     withString:@"%20"];
    NSString *data = [[NSString alloc] initWithContentsOfURL: [NSURL URLWithString: fileName] encoding:NSUTF8StringEncoding error:nil];

    NSLog(@"Read from file: %@", fileName);
    NSLog(@"Content: %@", data);
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsDirectory = [paths objectAtIndex:0];
    NSString *path = [documentsDirectory stringByAppendingPathComponent:[NSString stringWithFormat:@"%@.txt", item]];
    [data writeToFile:path atomically:YES encoding:NSUTF8StringEncoding error:nil];
    NSString* content = [NSString stringWithContentsOfFile:path
                                              encoding:NSUTF8StringEncoding
                                                 error:NULL];

    NSArray *  arrayData = [content componentsSeparatedByCharactersInSet:
             [NSCharacterSet characterSetWithCharactersInString:@"\n\n"]
             ];
    return arrayData;


}

有一个文件只有一个字符和一个数字,并且该文件每次都能正确下载。其余文件较大,多行。当我将文件移动到不同的服务器时,他们将下载文件的正确版本,但如果我再次进行更改并尝试从新源重新下载,则更改不会反映在下载中(但仍在服务器上)。

我很困惑,我看不出它会这样做的任何理由,除非它保存某种形式的 cookie。想法?

【问题讨论】:

  • 听起来像是缓存问题。不要使用 initWithContentsOfURL,而是尝试使用 NSURLConnection 并使用 requestWithURL:cachePolicy:timeoutInterval: 这样你就可以告诉下载不使用缓存的内容。
  • 我想通了,检查我的答案。

标签: ios iphone initwithcontentsofurl


【解决方案1】:

这是手机的错。我将 Note 3 用作无线热点,因为正常 wifi 连接的范围距离我坐的地方 20 英尺。一旦我连接到传统的 wifi,它就可以正常工作了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-22
    • 1970-01-01
    相关资源
    最近更新 更多