Transporter Swift 工具库开源项目

我要开发同款
匿名用户2015年03月30日
167阅读

技术信息

开源地址
https://github.com/nghialv/Transporter
授权协议
MIT

作品详情

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

功能介绍

Transporter 是一个方便上传和下载的库。 特性 支持并发或者顺序上传或者下载多个文件 支持后台上传和下载 支持进程跟踪 (单个任务或者任务组) 支持重置,停止,取消,重试任务 head...

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论