无法从 Firebase 部署的Node.js中引用公共文件夹



在firebase托管上观看node.js应用程序后,我尝试使用聚合物和nodejs/express和firebase托管创建一个项目。
在链接的视频中,firebase将表明firebase将服务默认情况下,静态public/index.html文件,这就是为什么他们将其删除以提供动态的原因。但是,此特定文件位于相同的函数目录中,而不再放置在公共文件夹中。

这是否意味着我的整个项目应放在函数文件夹中,还是仅将应用程序输入点放置在函数文件夹中?我无法发送放置在我的公共文件夹中的文件,如下所示。

  • 项目
    • 功能
      • server.js
    • 公共
      • index.html


app.get('*', (req, res) => {
   res.sendFile(path.join(__dirname, '/public/index.html'));
})

我相信firebase托管公众和功能文件夹有所不同,或者我是在错误地引用?

您需要嵌套 public文件夹内部 functions文件夹才能在功能中从其中引用文件。您只需将firebase.json中的public设置更改为例如。functions/public,然后将目录移入functions

然后,您将能够做一些您所描述的事情。

我认为无需将整个公共文件夹移动到功能文件夹中。您可以使用这样的相对路径

app.get('*', (req, res) => {
     res.sendFile( './../public/index.html'));
})

它对我有用...尝试一下。

相关内容

  • 没有找到相关文章

最新更新