ios-formdata
功能
在iOS
中提供了Formdata
的API
使用swift
语言
提供多文件上传功能
API
init
init(url : NSURL , cachePolicy : NSURLRequestCachePolicy , timeoutInterval : NSTimeInterval , method:String = "POST")
实例一个Form并且设置其url,缓存策略,超时时间以及请求方法,请求方法默认为POST
init(url : NSURL , method:String = "POST")
实例一个Form
并且设置其url
,请求方法,请求方法默认为POST
注:此方法cachePolicy
为 NSURLRequestCachePolicy.ReloadIgnoringLocalCacheData
,并且 timeoutInterval
为 2.0
append
append(key : String , value : String)
添加表单字段
appendFile
appendFile(key : String , filePath : NSURL!)
添加文件
appendData
appendData(#key:String,data:NSData!,filename:String,mimetype:String)
直接添加一个数据到表单中,这个数据是二进制的NSData
send
send(callback:((response:NSURLResponse! , dataObject:NSData!, error:NSError!) -> Void))
发送请求,回调函数的参数分别为response
,返回数据以及错误
示例
let url:NSURL? = NSURL(string: "http://localhost:3000/test")
var formdata = FormData(url: url!)
var filePath:NSURL = NSBundle.mainBundle().URLForResource("app", withExtension: "js")!
var jpgPath:NSURL = NSBundle.mainBundle().URLForResource("jacob", withExtension: "jpg")!
formdata.append(key: "hello", value: "world")
formdata.appendFile(key: "app", filePath: filePath)
formdata.appendFile(key: "jacob", filePath: jpgPath)
formdata.send({
(response , dataObject , error) -> Void in
var result = NSString(data: dataObject, encoding: NSUTF8StringEncoding)!
println(result)
})