Tag: afnetworking 2

如何通过AFNetworking创build简单的Http请求

我仍然使用ASIHTTPRequest,我正在寻找转移到AFNetworking我也经历了Raywenderlich速成class但它没有使用AFNetworking 2.0 我刚刚在AFNetworking中提到的下面的示例中尝试过,但是它不工作。 AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; //manager.responseSerializer.acceptableContentTypes = [NSSet setWithObject:@"text/html"]; NSDictionary *parameters = @{@"UserId": @"24",@"ArticleId":@"0"}; NSLog(@"%@",parameters); [manager POST:@"http://mysite.com/api/User/showArticleList" parameters:parameters success:^(AFHTTPRequestOperation *operation, id responseObject) { NSLog(@"JSON: %@", responseObject); }failure:^(AFHTTPRequestOperation *operation, NSError *error) { NSLog(@"Error: %@", error); }]; debugging区域显示: 错误域= NSCocoaErrorDomain代码= 3840 “(cocoa错误3840.)”(JSON文本没有开始与数组或对象和选项,以允许片段没有设置。)UserInfo = 0xa0ba580 {NSDebugDescription = JSON文本没有开始数组或对象和允许片段不能设置的选项。} 但是当我使用链接提到的Raywenderlich速成class [manager POST:@"http://www.raywenderlich.com/downloads/weather_sample/weather.php?format=json" parameters:parameters success:^(AFHTTPRequestOperation *operation, id […]

AFHTTPSessionManager头

我试图通过设置HTTPAdditionalHeaders设置“Content-Type”的默认标题。 当我查看请求标题时,AFNetworking(v 2.0.3)将其改回。 我也尝试通过setValue:forHTTPHeaderField在requestSerializer上设置标题,但没有成功。 我错过了什么? 更新 NSURL *URL = [NSURL URLWithString:@"http://example.com/api"]; NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration]; configuration.HTTPAdditionalHeaders = @{@"Content-Type": @"multipart/form-data"}; AFHTTPSessionManager *manager = [[AFHTTPSessionManager alloc] initWithBaseURL:URL sessionConfiguration:configuration]; manager.responseSerializer = [AFJSONResponseSerializer serializer]; NSMutableDictionary *params = [[NSMutableDictionary alloc]init]; [params setValue:@"some value" forKey:@"someKey"]; [manager POST:@"search" parameters:params success:^(NSURLSessionDataTask *task, id responseObject) { NSLog(@"success"); } failure:^(NSURLSessionDataTask *task, NSError *error) { […]

如何使用networking上传后台上传任务

我正尝试使用AFNetworking上传大文件,并在应用程序处于后台时继续上传。 我可以上传文件,但是当我尝试使用后台configuration时 – 应用程序崩溃,出现以下堆栈跟踪:exception:EXC_BAD_ACCESS(code = 1,address = 0x8000001f)) _CFStreamSetDispatchQueue -[__NSCFBackgroundDataTask captureStream:] __70-[__NSCFBackgroundDataTask _onqueue_needNewBodyStream:withCompletion:]_block_invoke_2 _dispatch_call_block_and_release _dispatch_queue_drain _dispatch_queue_invoke _dispatch_root_queue_drain _dispatch_worker_thread3 _pthread_wqthread 以下是一些示例代码: 注意:当我使用[NSURLSessionConfiguration defaultSessionConfiguration] ,上传成功,但当应用程序在后台时不会继续。 [NSURLSessionConfiguration backgroundSessionConfigurationWithIdentifier:@"com.company.appname.uploadservice"]导致应用程序崩溃。 NSMutableURLRequest *request = [[AFHTTPRequestSerializer serializer] multipartFormRequestWithMethod:@"POST" URLString:[uploadBundle.uploadUrl absoluteString] parameters:[uploadBundle getParameters] constructingBodyWithBlock:^(id<AFMultipartFormData> formData) { [formData appendPartWithFileURL:uploadBundle.fileDataUrl name:uploadBundle.fileName fileName:uploadBundle.fileName mimeType:uploadBundle.mimeType error:nil]; } error:nil]; Authentication *authentication = [Authentication getInstance]; [request addValue:authentication.token forHTTPHeaderField:@"token"]; [request […]

AFNetworking 2.0请求w。 自定义标题

我试图避免在这里问这样一个新问题,但我是一个Android开发学习IOS,我不能找出我的生活如何使用AFNetworking 2.0添加一个简单的头到我的发布请求。 下面是我的代码到目前为止工作,如果我想做一个请求,不需要一个头。任何人都可以通过添加到我的代码片段或提供一个替代这样做吗? 我遇到了这个问题: http ://www.raywenderlich.com/30445,显示如何添加一个标题下的“一个RESTful类”标题,但它的networking1.0,现在折旧,据我所知。 AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; NSDictionary *parameters = @{@"uid": @"1"}; AFHT [manager POST:@"http://myface.com/api/profile/format/json" parameters:parameters success:^(AFHTTPRequestOperation *operation, id responseObject) { //NSLog(@"JSON: %@", responseObject); self.feedArray = [responseObject objectForKey:@"feed"]; [self.tableView reloadData]; } failure:^(AFHTTPRequestOperation *operation, NSError *error) { NSLog(@"Error: %@", error); } ]; }

AFNetworking 2.0 – 如何下载asynchronous

在使用AFNetworking 2.0的ios中,我怎样才能轻松地asynchronous下载一个远程镜像,并将其caching到相同url的未来请求中? 我正在寻找一个方便的方式来接收错误callback和成功的。 谢谢

AFNetworking 2.0多部分请求主体空白

类似于这个问题 。 使用AFNetworking 2.0.3并尝试使用AFHTTPSessionManager的POST + constructBodyWithBlock上传图像。 由于未知的原因,似乎HTTP请求正文向服务器发送时总是空白。 我在下面的子类AFHTTPSessionManager(因此使用[self POST …] 。 我试过两种方式来构build请求。 方法1 :我只是试图通过参数,然后添加图像数据,如果它存在。 – (void) createNewAccount:(NSString *)nickname accountType:(NSInteger)accountType primaryPhoto:(UIImage *)primaryPhoto { NSString *accessToken = self.accessToken; // Ensure none of the params are nil, otherwise it'll mess up our dictionary if (!nickname) nickname = @""; if (!accessToken) accessToken = @""; NSDictionary *params = @{@"nickname": nickname, […]

使用AFHTTPRequestOperation AFNetworking 2authentication

我想通过批处理操作来使用AFNetworking。 我想下载3个json文件。 如何使用AFHTTPRequestOperation添加基本身份validation? NSMutableArray *mutableOperations = [NSMutableArray array]; for (NSString *fileURL in filesToDownload) { NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:fileURL]]; AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request]; [operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation , id responseObject) { NSLog(@"success: %@", operation.responseString); } failure:^(AFHTTPRequestOperation *operation, NSError *error) { NSLog(@"error: %@", operation.responseString); }]; [mutableOperations addObject:operation]; } NSArray *operations = [AFURLConnectionOperation batchOfRequestOperations:mutableOperations progressBlock:^(NSUInteger […]

如何使用AFOAuth2Manager自动刷新过期的标记?

我正在为使用OAuth2保护的服务器编写一个小型的iOS客户端。 我想知道是否有可能使用AFOAuth2Manager [这里]自动刷新过期的标记。 这个想法是,当服务器响应401时刷新客户端的逻辑,或刷新方法返回401时产生错误的逻辑应该是相当常见的,所以可能将其集成到某个库中。

AFNetworking 2.0 – 使用responseObject作为NSDictionary

AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; [manager GET:@"http://example.com/resources.json" parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) { NSLog(@"JSON: %@", responseObject); } failure:^(AFHTTPRequestOperation *operation, NSError *error) { NSLog(@"Error: %@", error); }]; 这是在AFNetworking 2.0中发送GET请求的推荐方法 。 我想要得到json中特定键的值,所以我想使用responseObject作为NSDictionary 。 这是我正在尝试: NSError *jsonError = nil; NSDictionary *json = [NSJSONSerialization JSONObjectWithData:(NSData *)responseObject options:kNilOptions error:&jsonError]; 它没有工作: *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFDictionary […]

如何在AFNetworking 2.0中设置请求超时和caching策略?

我遵循给定的示例代码 AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; [manager GET:@"http://example.com/resources.json" parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) { NSLog(@"JSON: %@", responseObject); } failure:^(AFHTTPRequestOperation *operation, NSError *error) { NSLog(@"Error: %@", error); }]; 要更改超时和caching策略,我“侵入”了库并创build – (AFHTTPRequestOperation *)GET:(NSString *)URLString parameters:(NSDictionary *)parameters timeoutInterval:(NSTimeInterval)timeoutInterval cachePolicy:(NSURLRequestCachePolicy)cachePolicy success:(void (^)(AFHTTPRequestOperation *operation, id responseObject))success failure:(void (^)(AFHTTPRequestOperation *operation, NSError *error))failure { NSMutableURLRequest *request = [self.requestSerializer requestWithMethod:@"GET" URLString:[[NSURL URLWithString:URLString relativeToURL:self.baseURL] […]