首页 > 解决方案 > 将 node.js 应用程序部署到 Firebase 时出现 504 超时

问题描述

我正在开发这个在 localhost 上按 wxpected 运行的应用程序,但一旦部署到 Firebase 托管它就会抛出这个错误

504网关超时

该功能将文件保存到磁盘,我担心部署时磁盘不可用,就像您重新启动dynos时的heroku一样。

app.get('/api', (request, response) => {
  var filename = Date.now() + '.jpg'
  webshot( url ,'public/' + filename , options, function (err) {
    if (err) {
        console.log(err);
    }
    else {
        response.send(filename);
    }
  });
})

这是我收到错误的原因吗?或者它可能是别的东西?部署后是否可以在 node.js 应用程序上存储文件?

标签: node.jsfirebase-hosting

解决方案


Cloud Functions 具有只读文件系统,但/tmp它由函数的内存支持。

这个 Firecast 的 1:30有一个很好的例子来写信给/tmp.

import * as os from 'os';
const tmp = os.tmpdir();

如果您想保留文件,您应该考虑使用Cloud Storage


推荐阅读