用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 }

 

 

 

你可能感兴趣的:(urlconnection)