我正在创建一个使用 json web 服务的 iPhone 应用程序。我有一个 NSURLRequest 和 NSURLConnection 对象,用于从该 Web 服务加载 JSON 数据:
NSMutableURLRequest *request = [[NSMutableURLRequest alloc]
initWithURL:url
cachePolicy:NSURLRequestReloadIgnoringLocalCacheData
timeoutInterval:30];
[request setHTTPMethod: @"POST"];
//[request setHTTPShouldHandleCookies:YES];
//create connection
NSURLConnection *connection = [[NSURLConnection alloc]
initWithRequest:request delegate:self];
[connection start];
我第一次执行上述代码时,使用 URL“admin.mydomain.com/param1/value1/param2/value2”,响应正确(JSON 字符串:{“Wrong API Key”})。
然后我将 url 更改为我的登台服务器:“admin.stg.mydomain.com/param1/value1/param2/value2”。该服务器为我提供了一些完全不同的输出(当我在浏览器中尝试新的 url 时,会显示正确的输出,一个与第一个 url 给我的完全不同的 json 对象),但在我的 iphone 应用程序中,我仍然得到确切的我从另一台服务器得到的相同响应。如果我尝试不存在的网址,我会收到正确的错误消息。
它似乎只是缓存了来自原始服务器的结果并为我的 stg 子域返回相同的值,以某种方式匹配两个 url(这可能吗?),但我已经清除了我能找到的所有缓存数据。我试图清理构建和构建目录,重新启动 xcode,计算机和所有内容,缓存策略设置为忽略缓存(参见代码)。重要提示:我在我的实际 iPhone 上得到了相同的行为,而不仅仅是模拟器。
有谁知道什么可能导致这种行为?我忘记了一些明显的事情吗?
我一直在看这个几个小时,非常感谢任何帮助!