首页 > 解决方案 > 错误:EROFS:只读文件系统,打开“metadata.json”。=> 我使用了 Firebase 函数。我部署了 json 文件。我不能写那个json

问题描述

这是错误,如果您有解决方案,请检查并回答我。我使用了firebase功能。

    错误:EROFS:只读文件系统,打开“metadata.json”
        在 Object.openSync (fs.js:498:3)
        在 Object.writeFileSync (fs.js:1524:35)
        在 /workspace/index.js:113:8
        在 Layer.handle [as handle_request] (/workspace/node_modules/express/lib/router/layer.js:95:5)
        在下一个(/workspace/node_modules/express/lib/router/route.js:137:13)
        在 Route.dispatch (/workspace/node_modules/express/lib/router/route.js:112:3)
        在 Layer.handle [as handle_request] (/workspace/node_modules/express/lib/router/layer.js:95:5)
        在 /workspace/node_modules/express/lib/router/index.js:281:22
        在 Function.process_params (/workspace/node_modules/express/lib/router/index.js:335:12)
        在下一个(/workspace/node_modules/express/lib/router/index.js:275:10)
    

标签: node.jsjsonfirebasegoogle-cloud-functionsreadonly

解决方案


如错误消息中所述,metadata.json位于只读目录中,因此出现错误。Firebase Functions 有一个只读文件系统,文件系统中唯一可写的部分是/tmp目录。

编辑:

如果您在部署期间包含了 JSON 文件,您将无法写入它,因为它将存储在只读目录中。如果你想在里面写,你必须先从一个bucket中下载它并保存在/tmp目录中。


推荐阅读