用NSURLSession和NSURLConnection获取文件的MIMEType

NSURLSession和NSURLConnection都是苹果自带的用于网络请求的类,NSURLSession是iOS 7.0之后推出的用于替代NSURLConnection的。下面分享一下这两个类获取文件MIMEType的方法。
 1 #pragma mark 获取文件的mimeType
 2 // NSURLSession版
 3 - (void)getMIMEType {
 4     // 用NSBundle获取工程中文件路径
 5     NSString *filePath = [[NSBundle mainBundle] pathForResource:@"a" ofType:@"png"];
 6     // 创建NSURL对象
 7     NSURL *fileUrl = [NSURL fileURLWithPath:filePath];
 8     // 创建请求
 9     NSURLRequest *request = [NSURLRequest requestWithURL:fileUrl];
10     // 创建NSURLSession的单例
11     NSURLSession *session = [NSURLSession sharedSession];
12     // 创建一个dataTask请求数据
13     NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
14         // response.MIMEType就是文件的MIMEType
15         NSLog(@"%@", response.MIMEType);
16     }];
17     // session的任务默认是挂起的,需要手动启用
18     [dataTask resume];
19 }
20 // NSURLConnection版
21 - (void)getMIMEType1 {
22     // 用NSBundle获取工程中文件路径
23     NSString *filePath = [[NSBundle mainBundle] pathForResource:@"a" ofType:@"png"];
24     // 创建NSURL对象
25     NSURL *fileUrl = [NSURL fileURLWithPath:filePath];
26     // 创建请求
27     NSURLRequest *request = [NSURLRequest requestWithURL:fileUrl];
28     NSURLResponse *response = nil;
29     // 同步请求
30     [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:nil];
31     // response.MIMEType就是文件的MIMEType
32     NSLog(@"%@", response.MIMEType);
33 }

 

 

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。