1、下载 Creating a Download Task
NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration]; AFURLSessionManager *manager = [[AFURLSessionManager alloc] initWithSessionConfiguration:configuration]; NSURL *URL = [NSURL URLWithString:@"http://example.com/download.zip"]; NSURLRequest *request = [NSURLRequest requestWithURL:URL]; NSURLSessionDownloadTask *downloadTask = [manager downloadTaskWithRequest:request progress:nil destination:^NSURL *(NSURL *targetPath,NSURLResponse *response) { NSURL *documentsDirectoryURL = [[NSfileManager defaultManager] URLForDirectory:NSdocumentDirectory inDomain:NSUserDomainMask appropriateForURL:nil create:NO error:nil]; return [documentsDirectoryURL URLByAppendingPathComponent:[response suggestedfilename]]; } completionHandler:^(NSURLResponse *response,NSURL *filePath,NSError *error) { NSLog(@"file downloaded to: %@",filePath); }]; [downloadTask resume];
2、上传 Creating an Upload Task
NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration]; AFURLSessionManager *manager = [[AFURLSessionManager alloc] initWithSessionConfiguration:configuration]; NSURL *URL = [NSURL URLWithString:@"http://example.com/upload"]; NSURLRequest *request = [NSURLRequest requestWithURL:URL]; NSURL *filePath = [NSURL fileURLWithPath:@"file://path/to/image.png"]; NSURLSessionUploadTask *uploadTask = [manager uploadTaskWithRequest:request fromfile:filePath progress:nil completionHandler:^(NSURLResponse *response,ID responSEObject,NSError *error) { if (error) { NSLog(@"Error: %@",error); } else { NSLog(@"Success: %@ %@",response,responSEObject); } }]; [uploadTask resume];
3、批量上传 Creating an Upload Task for a Multi-Part Request,with Progress
NSMutableURLRequest *request = [[AFhttpRequestSerializer serializer] multipartFormRequestWithMethod:@"POST" URLString:@"http://example.com/upload" parameters:nil constructingBodyWithBlock:^(ID<AFMultipartFormData> formData) { [formData appendPartWithfileURL:[NSURL fileURLWithPath:@"file://path/to/image.jpg"] name:@"file" filename:@"filename.jpg" mimeType:@"image/jpeg" error:nil]; } error:nil]; AFURLSessionManager *manager = [[AFURLSessionManager alloc] initWithSessionConfiguration:[NSURLSessionConfiguration defaultSessionConfiguration]]; NSURLSessionUploadTask *uploadTask; uploadTask = [manager uploadTaskWithStreamedRequest:request progress:^(nsprogress * _Nonnull uploadProgress) { // This is not called back on the main queue. // You are responsible for dispatching to the main queue for UI updates dispatch_async(dispatch_get_main_queue(),^{ //Update the progress vIEw [progressVIEw setProgress:uploadProgress.fractionCompleted]; }); } completionHandler:^(NSURLResponse * _Nonnull response,ID _Nullable responSEObject,NSError * _Nullable error) { if (error) { NSLog(@"Error: %@",error); } else { NSLog(@"%@ %@",responSEObject); } }]; [uploadTask resume];
4、数据任务 Creating a Data Task
NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration]; AFURLSessionManager *manager = [[AFURLSessionManager alloc] initWithSessionConfiguration:configuration]; NSURL *URL = [NSURL URLWithString:@"http://httpbin.org/get"]; NSURLRequest *request = [NSURLRequest requestWithURL:URL]; NSURLSessionDataTask *dataTask = [manager dataTaskWithRequest:request completionHandler:^(NSURLResponse *response,error); } else { NSLog(@"%@ %@",responSEObject); } }]; [dataTask resume];
5、请求参数设置 Request Serialization
Request serializers create requests from URL strings,enCoding parameters as either a query string or http body. Nsstring *URLString = @"http://example.com"; NSDictionary *parameters = @{@"foo": @"bar",@"baz": @[@1,@2,@3]};
总结
以上所述是小编给大家介绍的AFURLSessionManager 上传下载使用代码说明,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
总结以上是内存溢出为你收集整理的AFURLSessionManager 上传下载使用代码说明全部内容,希望文章能够帮你解决AFURLSessionManager 上传下载使用代码说明所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)