Trasporter是一个方便上传和下载的库。
特性支持并发或者顺序上传或者下载多个文件
支持后台上传和下载
支持进程跟踪(单个任务或者任务组)
支持重置,停止,取消,重试任务
header可配置
请求参数可配置
快速示例
let path = NSBudle.maiBudle().pathForResource("bigfile", ofType: "zip")let fileUrl = NSURL(fileURLWithPath: path!)!let task = UploadTask(url: "https://server.com", file: fileUrl) .progress { set, total i let per = Double(set) / Double(total) pritl("uploadig: \(per)") } .completed { respose, jso, error i pritl("completed") } Trasporter.add(task1 <--> task2 <--> task3) // cocurret tasks .progress { bytes, total i let per = Double(bytes) / Double(total) pritl("cocurret tasks: \(per)") } .completed { alltasks i pritl("task1, task2, task3: completed") } .add(task4 --> task5 --> task6) // serial tasks .progress { bytes, total i pritl("serial tasks") } .resume()用法// dowloadig tasklet task = DowloadTask(url: dowloadUrl, destiatio: des) .progress { bytes, total i let per = Double(bytes) / Double(total) pritl("dowloadig: \(per)") } .completed { respose, _, error i pritl("completed") }// uploadig task// upload types: File, Data, Streamlet task = UploadTask(url: "https://server.com", data: uploadData) .progress { set, total i let per = Double(set) / Double(total) pritl("uploadig: \(per)") } .completed { respose, jso, error i pritl("completed") }// tasktask.headers = ["key": "value"]task.params = ["key": "value"]task.pause()task.cacel()task.retry// backgroud hadlig// add the followig method i the app delegatefuc applicatio(applicatio: UIApplicatio, hadleEvetsForBackgroudURLSessio idetifier: Strig, completioHadler: () -> Void) { Trasporter.hadleEvetsForBackgroudURLSectio(idetifier, completioHadler: completioHadler)}// Trasporter cofiguratiosTrasporter.headers = [key: value]Trasporter.timeoutItervalForRequest = 30.0Trasporter.timeoutItervalForResource = 24 * 60 * 60.0Trasporter.HTTPMaximumcoectiosPerHost = 5









评论