如何在不使用委托的情况下获得NSURLConnection的http响应
问题描述:
我想知道是否有办法在不使用Apple提供的委托的情况下获得NSURLConnection
的HTTP响应。如何在不使用委托的情况下获得NSURLConnection的http响应
例如,如果我设置以下述方式连接:
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:url];
[request setHTTPMethod:@"POST"];
[request addValue:@"player.UpdateProfile" forHTTPHeaderField:@"player-profile"];
[self addHttpHeaders:request];
NSURLConnection *connection = [[NSURLConnection alloc]initWithRequest:request delegate:self startImmediately: YES];
现在这里代替委托给self
和解析在didReceiveResponse
方法的响应,我可以创建自定义委托哪里可以解析响应?我不需要一个关于如何去做的完整教程,但是如果你想在正确的方向上微调,我将不胜感激。由于
答
NSURLConnection的可能是更容易使用这些天:
[NSURLConnection sendAsynchronousRequest: urlRequest
queue: [NSOperationQueue mainQueue]
completionHandler: ^(NSURLResponse *response, NSData *data, NSError *error)
{
}
这避免了在所有创建的任何委托对象。被警告:取消这种请求非常困难,所以请确保你在响应处理程序中加入了安全措施。
是的,只要该对象符合委托人定义的协议,您就可以将委托设置为您希望的任何对象。 – danielbeard
在GitHUB上查看AFNetworking(https://github.com/AFNetworking/AFNetworking)。这是一个相当不可思议的库,它封装了这个功能,并且使它非常易于使用。 – MikeS
“自定义代表”是什么意思?请解释。 –