AFNetworking分片上传

AFNetworking是iOS常用网络库,适用于大文件分片上传。分片上传旨在提高大文件上传体验,通过将大文件分成小片,逐片上传,若某片上传失败,只需重新上传该片,提升效率。以下是核心代码片段。
摘要由CSDN通过智能技术生成

AFNetworking

AFNetworking是iOS常用的网络开发库,用起来很方便,满足大多数公司的需求,地址是:https://github.com/AFNetworking/AFNetworking

分片上传必要性

大家很多人都做过下载类的断点续传,下载也是因为大文件下载时间长,容易中断的情况。分片也是为了提高大文件上传体验而产生的。一个文件比如2G,我们一片0.1G ,就分成了20片,一片一片上传,假设中途第10片上传失败,我们下次只需要从第十片的位置开始上传就可以,等上传结束,服务器就会拼接20片的数据,还原文件。下面贴出来核心代码,大家可以根据需要修改成适合自己的代码:

分片
- (void)uploadMusic:(NSString *)filePath success:(void (^)(NSString *path))success failure:(void (^)(NSError *error))failure{
   
    NSString *mp3Md5 = [WeLineUtil getFileMD5Code:filePath];
    
   int chunk = 0;
    NSFileHandle *fileHandle = [NSFileHandle fileHandleForReadingAtPath:filePath];
    long long fileSize = [[fileHandle availableData] length];
    int blockLength = 500 * 1024;
    int chunks;
    if (fileSize % blockLength == 0) {
   
        chunks = (int) fileSize / blockLength;
    }else {
   
        chunks 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值