1
對node.js使用aws-sdk(2.0.18),我試圖使用deleteObjects
方法刪除多個對象。AWS-SDK S3 deleteObjects返回MalformedXML?
delete: function (objects, callback) {
var s3delete = new AWS.S3();
var params = {
Bucket: config.s3.bucket,
Delete: {
Objects: objects
}
};
s3delete.deleteObjects(params, function (err, deleted) {
if (err) {
console.log(err, err.stack);
return callback(err);
}
return callback(null, deleted);
});
}
我params對象是這樣的:
{ Bucket: 'bucketname',
Delete: {
Objects:[
{"Key":"folder/file.extension"},
{"Key":"folder/file.extension"},
{"Key":"folder/file.extension"},
{"Key":"folder/file.extension"},
{"Key":"folder/file.extension"},
{"Key":"folder/file.extension"},
{"Key":"folder/file.extension"}
]
}
}
這將返回以下錯誤:
{
message: "The XML you provided was not well-formed or did not validate against our published schema",
code: "MalformedXML",
time: "2014-10-11T10:35:52.525Z",
statusCode: 400,
retryable: false
}
按照API spec,這應該工作。僅供參考:我通過Mongoose Model的objects
參數傳遞,它在Mongoose中保存爲Mixed。