Javascript 将文件从S3下载到Zapier任务中

Javascript 将文件从S3下载到Zapier任务中,javascript,amazon-web-services,amazon-s3,zapier,Javascript,Amazon Web Services,Amazon S3,Zapier,我想在Zapier中从S3下载一个文件,并在Zap的其余部分使用它(因为文件存在但未显示)。奇怪的是,S3集成并没有提供这种功能(尽管您可以在机箱、驱动器等中实现) 我想我们需要使用Zapier的代码,我有这个基本的JS,但我想我需要指定区域,不知道如何将输出链接到Zap var AWS = require('aws-sdk'); AWS.config.update( { accessKeyId: ".. your key ..", secretAcces

我想在Zapier中从S3下载一个文件,并在Zap的其余部分使用它(因为文件存在但未显示)。奇怪的是,S3集成并没有提供这种功能(尽管您可以在机箱、驱动器等中实现)

我想我们需要使用Zapier的代码,我有这个基本的JS,但我想我需要指定区域,不知道如何将输出链接到Zap

var AWS = require('aws-sdk');
AWS.config.update(
  {
    accessKeyId: ".. your key ..",
    secretAccessKey: ".. your secret key ..",
  }
);
var s3 = new AWS.S3();
s3.getObject(
  { Bucket: "my-bucket", Key: "my-picture.jpg" },
  function (error, data) {
    if (error != null) {
      alert("Failed to retrieve an object: " + error);
    } else {
      alert("Loaded " + data.ContentLength + " bytes");
      // do something with data.Body
    }
  }
);
output = need to put my file here!!

我很感激任何指点——我很惊讶这之前没有人问过——我希望这并不意味着我错过了一些非常明显的东西

下面是从s3获取json文档的示例

var AWS=require('AWS-sdk');
常数s3=新的AWS.s3({
accessKeyId:“…您的密钥…”,
secretAccessKey:“…您的密钥…”,
地区:“地区”,
});
变量s3params={
桶:“桶”,
钥匙:“钥匙”,
};
s3.getObject(s3参数,函数(错误,数据){
如果(错误){
控制台错误(错误消息);
}否则{
让jsonString=data.Body.toString();
让result=JSON.parse(jsonString);
返回结果;
}
});

谢谢Nonik-但我刚刚得到了ReferenceError:当我在Zapier上运行时,AWS没有定义。在我使用SDK的示例中,我没有得到这个,而是得到了一个意外的令牌!我已经修复了这个答案中的一个语法错误。如果您将
返回结果
行修改为
返回{output:result}
,则它可能会工作。取决于它是什么类型的文件