Skip to content

Commit 945c113

Browse files
committed
fix(cos): optimize error message
1 parent e0961ab commit 945c113

File tree

1 file changed

+30
-23
lines changed

1 file changed

+30
-23
lines changed

src/modules/cos/index.js

Lines changed: 30 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)