我是一个obj-c新手,并已经使用asihttp我的一些项目。 在asihttp做这样的post请求时。 ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url]; [request setPostValue:height forKey:@"user[height]"]; [request setPostValue:weight forKey:@"user[weight]"]; [request setDelegate:self]; [request startAsynchronous]; 如何去做这个是一个代码示例的AFNetworking? 我已经得到了Json getrequest在AFNetworking工作,但这个职位的要求给了我一些问题。 提前感谢您的帮助。
我看到有一个我可以修改的接受的http状态代码的列表,但是我认为如果我可以在失败块中获得http状态代码,它会更干净。 好的,find操作对象的答案 failure:^(AFHTTPRequestOperation *operation, NSError *error){ NSLog(@"error code %d",[operation.response statusCode]); }];
由于ASIHTTPRequest最近停止了工作 ,似乎关注正在转向AFNetworking 。 但是,我还没有find比较两个库的function,所以我不知道如果/当我切换时可能会丢失什么。 我目前发现的主要差异是: AFNetworking有一个小得多的代码(这是很好的) AFNetworking正在迅速改进(所以它可能还不成熟,可能没有一个稳定的API呢?) 两者都似乎有caching,但我已经看到提示,因为AFNetworking使用NSURLConnection它不会caching对象超过50K ASIHTTPRequest对手动和自动(PAC)http代理有很好的支持; 我找不到AFNetworking代理服务器支持的级别 AFNetworking要求iOS 4+,而ASIHTTPRequest则适用于iOS 2(对我来说不是一个问题,但这对某些人来说是一个问题) AFNetworking还没有内置的持久caching,但有一个持久的caching有一个挂起的请求: https : //github.com/gowalla/AFNetworking/pull/25 有没有人看到两个库的任何好的比较或任何logging从一个切换到另一个的经验?
我正在使用AFNetworking在VolunteerMatch API上执行Web请求。 当我执行请求时,我收到一个200代码,但是我没有收到答复。 这是一个典型的VolunteerMatch请求的样子: GET /api/call?action=helloWorld&query=… HTTP/1.1 Host: www.volunteermatch.org Accept-Charset: UTF-8 Content-Type: application/json Authorization: WSSE profile="UsernameToken" X-WSSE: UsernameToken Username="acme", PasswordDigest="quR/EWLAV4xLf9Zqyw4pDmfV9OY=", Nonce="d36e316282959a9ed4c89851497a717f", Created="2003-12-15T14:43:07-0700" 这里是扩展文档。 这是我用来提出请求的代码: // Create parameters NSDictionary* param = @{ @"action":@"helloWorld", @"query":@"{\"name\":\"john\"}" }; // Create Manager AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; manager.responseSerializer = [AFJSONResponseSerializer serializer]; manager.requestSerializer = [AFJSONRequestSerializer serializer]; // Add Headers [manager.requestSerializer setValue:@"WWSE […]
我有点混淆如何利用新的iOS 7 NSURLSession后台传输function和AFNetworking (版本2和3)。 我看到了WWDC 705 – What's New in Foundation Networking会议中WWDC 705 – What's New in Foundation Networking ,他们演示了在应用程序终止甚至崩溃之后继续下载的后台下载。 这是通过使用新的API application:handleEventsForBackgroundURLSession:completionHandler:事实上,会话的委托最终将获得callback并可以完成其任务。 所以我想知道如何使用AFNetworking(如果可能)继续在后台下载。 问题是,AFNetworking方便地使用基于块的API来做所有的请求,但是如果应用程序终止或崩溃,那些块也不见了。 那么我怎么才能完成这个任务? 或者也许我在这里错过了一些东西… 让我解释一下我的意思: 例如,我的应用程序是一个照片消息应用程序,可以说我有一个PhotoMessage对象代表一个消息,这个对象有像 state – 描述照片下载的状态。 resourcePath – 最终下载的照片文件的path。 所以当我从服务器得到一条新消息时,我创build了一个新的PhotoMessage对象,并开始下载它的照片资源。 PhotoMessage *newPhotoMsg = [[PhotoMessage alloc] initWithInfoFromServer:info]; newPhotoMsg.state = kStateDownloading; self.photoDownloadTask = [[BGSessionManager sharedManager] downloadTaskWithRequest:request progress:nil destination:^NSURL *(NSURL *targetPath, NSURLResponse *response) […]
试图在iOS9上运行我现有的应用程序,但使用AFURLSessionManager失败。 __block NSURLSessionDataTask *task = [self.sessionManager dataTaskWithRequest:request completionHandler:^(NSURLResponse * __unused response, id responseObject, NSError *error) { if (error) { } else { } }]; [task resume]; 我得到以下错误: Error Domain=NSURLErrorDomain Code=-999 "cancelled. 还获得以下日志: NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9824 CFNetwork SSLHandshake failed (-9824) 更新:我已经添加了多个更新到我的解决scheme: NSURLSession / NSURLConnection HTTP加载失败在iOS 9上