File tree 3 files changed +13
-8
lines changed
3 files changed +13
-8
lines changed Original file line number Diff line number Diff line change 1
1
{
2
2
"name" : " qiniu-js" ,
3
3
"jsName" : " qiniu" ,
4
- "version" : " 2.2.1 " ,
4
+ "version" : " 2.2.2 " ,
5
5
"private" : false ,
6
6
"description" : " Javascript SDK for Qiniu Resource (Cloud) Storage AP" ,
7
7
"main" : " dist/qiniu.min.js" ,
Original file line number Diff line number Diff line change @@ -12,13 +12,12 @@ import {
12
12
getHeadersForChunkUpload ,
13
13
getHeadersForMkFile ,
14
14
request ,
15
- readAsArrayBuffer ,
15
+ computeMd5 ,
16
16
getUploadUrl ,
17
17
filterParams
18
18
} from "./utils" ;
19
19
20
20
import { Pool } from "./pool" ;
21
- import SparkMD5 from "spark-md5" ;
22
21
23
22
let BLOCK_SIZE = 4 * 1024 * 1024 ;
24
23
@@ -205,11 +204,8 @@ export class UploadManager {
205
204
return reuseSaved ( ) ;
206
205
}
207
206
208
- return readAsArrayBuffer ( chunk ) . then ( body => {
207
+ return computeMd5 ( chunk ) . then ( md5 => {
209
208
210
- let spark = new SparkMD5 . ArrayBuffer ( ) ;
211
- spark . append ( body ) ;
212
- let md5 = spark . end ( ) ;
213
209
if ( savedReusable && md5 === info . md5 ) {
214
210
return reuseSaved ( ) ;
215
211
}
@@ -224,7 +220,7 @@ export class UploadManager {
224
220
return request ( requestUrl , {
225
221
method,
226
222
headers,
227
- body,
223
+ body : chunk ,
228
224
onProgress,
229
225
onCreate
230
226
} ) . then ( response => {
Original file line number Diff line number Diff line change 1
1
import { urlSafeBase64Encode , urlSafeBase64Decode } from "./base64" ;
2
2
import { regionUphostMap } from "./config" ;
3
+ import SparkMD5 from "spark-md5" ;
3
4
4
5
// 对上传块本地存储时间检验是否过期
5
6
// TODO: 最好用服务器时间来做判断
@@ -113,6 +114,14 @@ export function createXHR() {
113
114
return new window . ActiveXObject ( "Microsoft.XMLHTTP" ) ;
114
115
}
115
116
117
+ export function computeMd5 ( data ) {
118
+ return readAsArrayBuffer ( data ) . then ( buffer => {
119
+ let spark = new SparkMD5 . ArrayBuffer ( ) ;
120
+ spark . append ( buffer ) ;
121
+ return spark . end ( ) ;
122
+ } ) ;
123
+ }
124
+
116
125
export function readAsArrayBuffer ( data ) {
117
126
return new Promise ( ( resolve , reject ) => {
118
127
let reader = new FileReader ( ) ;
You can’t perform that action at this time.
0 commit comments