Javascript 在Cloud Functions/temp目录中创建一个文件

Javascript 在Cloud Functions/temp目录中创建一个文件,javascript,node.js,google-cloud-functions,Javascript,Node.js,Google Cloud Functions,我正在尝试创建一个存储房间信息的文件,以便在其他功能中使用它 我有以下代码 const fs = require('fs') const { tmpdir } = require('os'); fs.writeFileSync(`${tmpdir}/room-keys.tmp`, `${room.key}\n`, (err) => { if (err) throw err functions.logger.info(`New room registered,

我正在尝试创建一个存储房间信息的文件,以便在其他功能中使用它

我有以下代码

const fs = require('fs')
const { tmpdir } = require('os');
fs.writeFileSync(`${tmpdir}/room-keys.tmp`, `${room.key}\n`, (err) => {
        if (err) throw err
        functions.logger.info(`New room registered, ${JSON.stringify(room)}`)
     })

每次我尝试创建文件时,它都会返回一个错误,说明目录不存在。首先,您没有正确使用
os.tmpdir
导入。如果要生成临时目录的路径,请执行以下操作:

const os = require('os');
const path = require('path');
const tmp = os.tmpdir();
const file = path.join(tmp, "file.ext");

其次,您不应该期望temp目录会出现在将来的函数调用中。它也不会在不同部署的功能之间共享。它只能在处理单个请求时使用,并在函数结束前删除。它是一个基于内存的文件系统,因此在那里写入文件会消耗内存。

首先,您没有正确使用
os.tmpdir
导入。如果要生成临时目录的路径,请执行以下操作:

const os = require('os');
const path = require('path');
const tmp = os.tmpdir();
const file = path.join(tmp, "file.ext");
其次,您不应该期望temp目录会出现在将来的函数调用中。它也不会在不同部署的功能之间共享。它只能在处理单个请求时使用,并在函数结束前删除。它是一个基于内存的文件系统,因此在那里写入文件会消耗内存