【发布时间】:2012-07-08 23:14:01
【问题描述】:
我有一些 Objective-c 代码对服务器进行异步调用(我认为是大声笑),但我不太确定,处理从服务器返回的响应的正确方法是什么?
我会这样做:
NSURLRequest *urlRequest = [NSURLRequest requestWithURL:url];
// ***************
// TODO: ok I dont really understand what this is
NSOperationQueue *queue = [[NSOperationQueue alloc] init];
// **************
[NSURLConnection sendAsynchronousRequest:urlRequest queue:queue completionHandler:^(NSURLResponse *response, NSData *data, NSError *error)
{
...
由于我对 Objective-C 非常陌生,我什至不确定在哪里查看如何从对象中获取值,或者如何处理 NSData 或 NSResponse 对象。
我知道我的服务器有时会发回一个 JSON 响应,有时只是一个类似“ok”的字符串
另外,让我更加困惑的是这个教程:
据此我应该有一些单独的功能,例如
- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response
或
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data
所以我的问题是从请求的 3 个变量(错误、响应、数据)中获取基本返回数据的方法是什么,我应该什么时候实现我提到的教程建议的方法?似乎本教程有一个更优雅的解决方案......但我不确定它是否矫枉过正。
【问题讨论】:
标签: objective-c ios ios5 nsurlconnection