Amazon web services AWS S3节点sdk copyObject NoSuchKey错误
更新 我认为这可能是因为没有等待Amazon web services AWS S3节点sdk copyObject NoSuchKey错误,amazon-web-services,amazon-s3,aws-lambda,Amazon Web Services,Amazon S3,Aws Lambda,更新 我认为这可能是因为没有等待弹性Trnscoder完成工作 我有一个由lambda发起的Amazon弹性转码器工作。我可以在“out”存储桶中看到转码文件。我正在尝试将此转码文件复制到另一个bucket,如下所示: let copyParams = { Bucket: "hurontg.video.out.1", CopySource: "hurontg.x3482.video.out/58759ab51e57_transcoded.mp4", // bucket/file exi
弹性Trnscoder
完成工作
我有一个由lambda发起的Amazon弹性转码器工作。我可以在“out”存储桶中看到转码文件。我正在尝试将此转码文件复制到另一个bucket,如下所示:
let copyParams = {
Bucket: "hurontg.video.out.1",
CopySource: "hurontg.x3482.video.out/58759ab51e57_transcoded.mp4", // bucket/file exists
Key: "58759ab51e57.mp4"
};
s3.copyObject(copyParams, function(err, data) {
if (err) {
console.log(err, err.stack);
} else {
}
)};
这导致:
NoSuchKey: The specified key does not exist.
如前所述,我可以验证源bucket和文件是否存在。由于应在目标存储桶中创建
键,因此不确定此错误的含义是什么?您需要确保CopySource是url编码的,例如CopySource:encodeURIComponent(“hurontg.x3482.video.out/58759ab51e57_transcoded.mp4“,
这里有更多详细信息:如果CopySource:“theu source\u bucket/theu transcoded\u file”,
是您的实际代码,那么很明显,这一行是错误的,因为变量不会像这样插入引号。如果这不是您的实际代码,那么这里是否真的有文字字符串?如果没有,这里是什么?错误消息表示没有与此值匹配的对象。@Michael sqlbot,CopySource
是一个带值的字符串文字,'hurontg.x3482.video.out/58759ab51e57_transcoded.mp4'
这个值应该是/
+源代码bucket name
+/
+对象键
@Michael sqlbot我想我没有在等待转码作业完成。你是怎么知道的?