У меня есть NSURLConnection, который я звоню каждый раз, когда вызывается -(void)viewWillAppear:animated
(это только сейчас, это только для тестирования)
Я делаю это так
receivedData = [[NSMutableData data] retain];
NSString *urlString = @"<URL hidden>";
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:urlString] cachePolicy:NSURLRequestReturnCacheDataElseLoad timeoutInterval:30.0];
[NSURLConnection connectionWithRequest:request delegate:self];
Тогда у меня есть три метода делегата:
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
[receivedData appendData:data];
}
- (void)connectionDidFinishLoading:(NSURLConnection *)connection {
NSString *returnString = [[NSString alloc] initWithData:receivedData encoding:NSUTF8StringEncoding];
usersPhotos = [[NSMutableArray alloc] initWithArray:[[returnString JSONValue] objectForKey:@"data"]];
[self loadAnnotations];
NSLog(@"%@", returnString);
[returnString release];
}
- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error {
[self loadAnnotations];
}
Даже если я уверен, что returnString
должен измениться (я могу зайти на сайт в urlString
и подтвердить, что он изменился), он всегда одинаков.
Это как если бы он повторно использовал данные, которые он извлекает из первого соединения.
Кто-нибудь знает, почему это так?