@@ -577,6 +577,7 @@ function uploadSliceItem(params, callback) {
577577 var ServerSideEncryption = params . ServerSideEncryption ;
578578 var UploadData = params . UploadData ;
579579 var ChunkRetryTimes = self . options . ChunkRetryTimes + 1 ;
580+ var Headers = params . Headers || { } ;
580581
581582 var start = SliceSize * ( PartNumber - 1 ) ;
582583
@@ -589,6 +590,14 @@ function uploadSliceItem(params, callback) {
589590 ContentLength = end - start ;
590591 }
591592
593+ var headersWhiteList = [ 'x-cos-traffic-limit' , 'x-cos-mime-limit' ] ;
594+ var headers = { } ;
595+ util . each ( Headers , function ( v , k ) {
596+ if ( headersWhiteList . indexOf ( k ) > - 1 ) {
597+ headers [ k ] = v ;
598+ }
599+ } ) ;
600+
592601 util . fileSlice ( FilePath , start , end , function ( md5Body ) {
593602 util . getFileMd5 ( md5Body , function ( err , md5 ) {
594603 var contentMd5 = md5 ? util . binaryBase64 ( md5 ) : '' ;
@@ -606,6 +615,7 @@ function uploadSliceItem(params, callback) {
606615 UploadId : UploadData . UploadId ,
607616 ServerSideEncryption : ServerSideEncryption ,
608617 Body : Body ,
618+ Headers : headers ,
609619 onProgress : params . onProgress ,
610620 ContentMD5 : contentMd5 ,
611621 } , function ( err , data ) {
0 commit comments