用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 }
时间: 2024-10-12 14:52:21

用NSURLSession和NSURLConnection获取文件的MIMEType的相关文章

iOS开发之网络编程--获取文件的MIMEType

前言:有时候我们需要获取文件的MIMEType的信息,下面就介绍关于获取MIMEType的方法. 1.直接百度搜索关键字"MIMEType",你会找到,然后查吧: 2.用代码获取文件的MIMEType信息: 1 #import "GetMIMEType.h" 2 3 #import <MobileCoreServices/MobileCoreServices.h> 4 5 @implementation GetMIMEType 6 7 #pragma m

获取文件的 MIMEType

能够获取文件的 MIMEType. { 上传文件的时候,需要告诉服务器文件类型(即Content-Type),这时,需要获取文件的 MIMEType. 获取文件的 MIMEType 方法:加载文件时,通过 response 获得 { NSURLRequest *request = [NSURLRequest requestWithURL:url]; NSURLResponse *response = nil; [NSURLConnection sendSynchronousRequest:req

获取文件的MimeType类型

项目中经常会需要获取文件的真实MimeType类型,导入activation.jar,在调用其中的API借款方面简单的获取. activation.jar文件下载地址:http://www.java2s.com/Code/Jar/a/Downloadactivationjar.htm /** * 获文件MimeType * * @param file * 目标文件 * @return MimeType * @Author Jie * @Date 2015-2-28 */ public stati

获取返回值MIMEType的工具方法

为了获取不同文件的MIMEType,特意抽取了一个工具类,希望对大家有帮助: - (NSString *)MIMEType:(NSURL *)url { //1.创建一个请求 NSURLRequest *request = [NSURLRequest requestWithURL:url]; //2.发送请求(返回响应) NSURLResponse *response = nil; [NSURLConnection sendSynchronousRequest:request returning

iOS 网络请求 NSURLSession 的上传文件方法

NSURLSession/NSURLConnection的上传文件方法 此篇文章的理论基础主要是与HTTP网络通信协议相关.为集中精力,可以先把TCP/IP协议这些置之不理,也就是先只关注HTTP的请求和响应的结构.HTTP完整的原理内容就此略过.在此只略提相关内容.文中涉及的设计源码可以通过这里获取 https://github.com/wuqingjian2015/uploadHelper,有意者可以去看看. HTTP是干什么用的呢? 先考虑一下以下应用过程: 从客户端向服务器端发起一个请求

NSURLSession与NSURLConnection区别

使用现状 NSURLSession是NSURLConnection 的替代者,在2013年苹果全球开发者大会(WWDC2013)随ios7一起发布,是对NSURLConnection进行了重构优化后的新的网络访问接口.从iOS9.0开始, NSURLConnection中发送请求的两个方法已过期(同步请求,异步请求),初始化网络连接(initWithRequest: delegate:)的方法也被设置为过期,系统不再推荐使用,建议使用NSURLSession发送网络请求. 普通任务和上传 NSU

ios网络访问接口-NSURLSession与NSURLConnection的区别

AFNetworking是日常开发中最常用的网络框架,现在我们使用的版本是3.0版,3.0与2.0版最大的区别就是,AFNetworking 2.0使用NSURLConnection的基础API ,而3.0是完全基于NSURLSession的API,已经抛弃了NSURLConnection.而NSURLSession可以看作是是NSURLConnection 的替代者,在2013年苹果全球开发者大会(WWDC2013)随ios7一起发布,是对NSURLConnection进行了重构优化后的新的网

nodejs 获取文件夹中的文件和获取文件夹中的所有图片

//获取项目工程里的图片 var fs = require('fs');//引用文件系统模块 var image = require("imageinfo"); //引用imageinfo模块 function readFileList(path, filesList) { var files = fs.readdirSync(path); files.forEach(function (itm, index) { var stat = fs.statSync(path + itm);

iOS NSURLSession VS NSURLConnection

NSURLSession VS NSURLConnection NSURLSession可以看做是NSURLConnection的进化版,其对NSURLConnection的改进点有: * 根据每个Session做配置(http header,Cache,Cookie,protocal,Credential),不再在整个App层面共享配置. * 支持网络操作的取消和断点续传 * 改进了授权机制的处理 * 丰富的Delegate模型 * 分离了真实数据和网络配置数据. * 后台处理上传和下载,即使