@@ -25,16 +25,21 @@ class Cos {
2525 return new Promise ( ( resolve , reject ) => {
2626 callback ( params , ( err , res ) => {
2727 if ( err ) {
28- const e = new Error (
29- typeof err . error === 'string' ? err . error : `${ err . error . Code } : ${ err . error . Message } ` ,
30- ) ;
28+ if ( typeof err . error === 'string' ) {
29+ reject ( new Error ( err . error ) ) ;
30+ }
31+ const errMsg = err . error . Message
32+ ? `${ err . error . Code } : ${ err . error . Message } , ${ err . error . RequestId } `
33+ : `${ JSON . stringify ( err . error ) } __` ;
34+
35+ const e = new Error ( errMsg ) ;
3136 if ( err . error && err . error . Code ) {
3237 // Conflict request, just resolve
3338 if ( err . error . Code === 'PathConflict' ) {
3439 resolve ( true ) ;
3540 }
3641 e . code = err . error . Code ;
37- e . requestId = err . error . RequestId ;
42+ e . reqId = err . error . RequestId ;
3843 }
3944 reject ( e ) ;
4045 }
@@ -56,7 +61,7 @@ class Cos {
5661 } catch ( e ) {
5762 if ( e . code == 'BucketAlreadyExists' || e . code == 'BucketAlreadyOwnedByYou' ) {
5863 if ( ! inputs . force ) {
59- throw new TypeError ( `API_COS_putBucket` , JSON . stringify ( e ) , e . stack ) ;
64+ throw new TypeError ( `API_COS_putBucket` , e . message , e . stack , e . reqId ) ;
6065 } else {
6166 console . log ( `Bucket ${ inputs . bucket } already exist.` ) ;
6267 }
@@ -582,25 +587,27 @@ class Cos {
582587 }
583588 }
584589
585- if ( detail && detail . Contents ) {
586- // delete files
587- const objectList = ( detail . Contents || [ ] ) . map ( ( item ) => {
588- return {
589- Key : item . Key ,
590- } ;
591- } ) ;
592-
593- try {
594- const deleteMultipleObjectHandler = this . promisify (
595- this . cosClient . deleteMultipleObject . bind ( this . cosClient ) ,
596- ) ;
597- await deleteMultipleObjectHandler ( {
598- Region : this . region ,
599- Bucket : inputs . bucket ,
600- Objects : objectList ,
590+ if ( detail ) {
591+ if ( detail . Contents && detail . Contents . length > 0 ) {
592+ // delete files
593+ const objectList = ( detail . Contents || [ ] ) . map ( ( item ) => {
594+ return {
595+ Key : item . Key ,
596+ } ;
601597 } ) ;
602- } catch ( e ) {
603- console . log ( e ) ;
598+
599+ try {
600+ const deleteMultipleObjectHandler = this . promisify (
601+ this . cosClient . deleteMultipleObject . bind ( this . cosClient ) ,
602+ ) ;
603+ await deleteMultipleObjectHandler ( {
604+ Region : this . region ,
605+ Bucket : inputs . bucket ,
606+ Objects : objectList ,
607+ } ) ;
608+ } catch ( e ) {
609+ console . log ( e ) ;
610+ }
604611 }
605612 try {
606613 const deleteBucketHandler = this . promisify (
0 commit comments