var self = this; var blockSize = 1024 * 1024; //每块的大小 //计算文件切片总数 var totalPieces = Math.ceil(file.size / blockSize); var promiseList = []; let uuid = Toolkits.generateUUID(); for (let skip = 0; skip < totalPieces; skip++) { (function(i) { var formData = new FormData(); //初始化一个FormData对象 var nextSize = Math.min((i + 1) * blockSize, file.size); //读取到结束位置 var fileData = file.slice(i * blockSize, nextSize); //截取 部分文件 从哪-哪 formData.append("file", fileData); //将 部分文件 塞入FormData formData.append("fileName", file.name); //保存文件名字 formData.append("chunk", i); //当前编号 formData.append("chunks", totalPieces); //文件总数 var promiseSkip = new Promise((resolve, reject) => { console.log( `fileName=${formData.get("fileName")}---- chunk=${formData.get("chunk")}---- chunks=${formData.get("chunks")}---- ); $.ajax({ url:uploadurl, type: "POST", data: formData, processData: false, // 告诉jQuery不要去处理发送的数据 contentType: false, // 告诉jQuery不要去设置Content-Type请求头 success: function(responseText) { resolve(responseText); } }); }); promiseList.push(promiseSkip); })(skip);缓存失败的uuid,实现断点续传已参与了 SegmentFault 思否社区 10 周年「问答」打卡 ,欢迎正在阅读的你也加入。
缓存失败的uuid,实现断点续传
已参与了 SegmentFault 思否社区 10 周年「问答」打卡 ,欢迎正在阅读的你也加入。