【发布时间】:2014-12-06 11:20:03
【问题描述】:
使用 node.js 的 aws-sdk (2.0.18),我正在尝试使用 deleteObjects 方法删除多个对象。
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 模型中传入 objects 参数,它在 Mongoose 中存储为 Mixed。
【问题讨论】:
标签: json node.js amazon-web-services amazon-s3 mongoose