弃用的NSURLConnection方法,有替代方案吗?

3

我正在设置一个NSURLConnection来访问远程服务器:

NSURL *url = [[NSURL alloc] initWithString:projectURL];
NSURLRequest *request = [NSURLRequest requestWithURL:url cachePolicy:NSURLRequestReloadIgnoringCacheData timeoutInterval:60];
NSURLConnection *connection = [[NSURLConnection alloc] initWithRequest:request delegate:self];

使用下面的代理方法:
- (void)connection:(NSURLConnection *)connection didReceiveAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge

- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response

- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data

- (void)connectionDidFinishLoading:(NSURLConnection *)connection

- (NSCachedURLResponse *)connection:(NSURLConnection *)connection willCacheResponse:(NSCachedURLResponse *)cachedResponse

所有这些方法都说“可在iOS 2.0到iOS 4.3中使用”。我的问题是,对于当前的iOS5,我应该用另一种方式吗?我需要异步传输,并需要传递NSURLCredential进行UID/PWD身份验证。

编辑:

所以,如果我在头文件中采用协议<NSURLConnectionDelegate>并使用上面的委托方法,我是在正确的方式下操作吗?


可能是重复的问题:iOS5 NSURLConnection 方法已弃用 - Heath Borders
1个回答

4

1
是的,它们仍然存在,只是已经被移动到正式协议中。 - Wevah
嗯,实际上,由于某种原因,这些方法在协议文档中都没有列出来;但它们仍然存在(并且未被弃用)!搜索网络表明这是一个文档错误。 - Wevah
不客气,fuzzy。将<NSURLConnectionDelegate>添加到您的头文件中应该适用于正式和非正式协议使用,但我不得不想知道编译器是否会抛出任何“警告”投诉。希望不会。 - Michael Dautermann

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接