如何使用 Node 访问 Lambda 中的 /tmp 文件夹?

Lee*_*Moe 2 node.js typescript aws-lambda

我试图将处理后的图像暂时保存在 /tmp 文件夹中,但它对我不起作用。假设它位于根文件夹下,我尝试以这种方式获取它:

let tempraryImageDirectory: string;
if (process.env.DEV && process.env.DEV === 'Yes') {
  tempraryImageDirectory = path.join(__dirname, `../../tmp/`);
} else {
  tempraryImageDirectory = path.join(__dirname, `./tmp/`);
}
Run Code Online (Sandbox Code Playgroud)

这里选择else的是本地测试。我不想在根目录中创建 /tmp 文件夹。当地一切都很好。但目前在 Lambda 中,目录 CloudWatch 上发生的任何操作都不会显示此后写入的任何日志,并且我的函数因未知原因而失败。知道我是否正确寻址 /tmp 文件夹吗?

Pau*_*aul 9

该目录只是/tmp,它与工作目录无关:

let tempraryImageDirectory: string;
if (process.env.DEV && process.env.DEV === 'Yes') {
  tempraryImageDirectory = path.join(__dirname, `../../tmp/`);
} else {
  tempraryImageDirectory = '/tmp/';
}
Run Code Online (Sandbox Code Playgroud)

如果您没有故意遗漏它,您可能还希望重命名变量以包含oin 。temporary


Mar*_*k B 5

更改为:./tmp/,即“当前工作目录下的 /tmp 目录”

到此:/tmp/,即“根文件系统下的/tmp目录”