【问题标题】:Firebase deploy of a nodejs app with angular as the front end framework使用 Angular 作为前端框架的 nodejs 应用程序的 Firebase 部署
【发布时间】:2019-12-06 14:26:26
【问题描述】:

如何配置一个 express.js 应用程序,它使用 Angular 作为前端框架和多个路由文件以及服务器和 Angular 通过服务级别 api 调用相互通信,以便它可以通过 firebase 托管部署在 firebase .

现在我很难找到正确的方式来配置 firebase.json 文件以及要在 firebase 中部署的整个项目。

到目前为止,当我部署我的应用程序时,只有 dist 文件夹中的 index.html 页面通过 api 或任何方式进入。

const express = require("express");
const app = express();
const bodyParser = require("body-parser");
const cors = require("cors");
const path = require("path");
const http = require("http");
// const functions = require('firebase-functions')
const server = http.createServer(app);


const authRoutes = require("./api/auth");
const dataRoutes = require("./api/data");
const deviceRoutes = require('./api/device');



app.use(cors());
app.options("*", cors());
app.use(bodyParser.json());
app.use(
  bodyParser.urlencoded({
    extended: false
  })
);
app.use(express.static(path.join(__dirname, "dist")));

const port = process.env.PORT || "1337";
app.set("port", port);

app.use("/api/auth", authRoutes);
app.use("/api/data", dataRoutes);
app.use("/api/device", deviceRoutes);

app.get("*", function (req, res) {
  res.sendFile(path.join(__dirname, "dist/index.html"));
});



// exports.app = functions.https.onRequest(app);
server.listen(port, () => console.log(`Server running on localhost:${port}`));

我需要使用 firebase 功能吗?请帮忙

编辑

我们能否以任何方式包含云功能来帮助托管此应用程序?

【问题讨论】:

    标签: node.js angular firebase express firebase-hosting


    【解决方案1】:

    我之前尝试过,但这是不可能的。

    【讨论】:

    • 但是有一个视频显示我们可以在 firebase 托管中部署 nodejs 应用程序,对吗?这不算数吗?
    • 有一个视频可以执行nodejs 是的但是不能托管。
    • 为什么?我的意思是来自 firebase 团队?
    • 只能部署nodejs函数。因此,如果您想这样做,也许您可​​以单独部署每个 api 调用。然后通过向 firestore 添加值来触发它。
    • 所以你的意思是,我们需要部署我在nodejs单个文件中创建的每一个api调用函数,然后我可以做到这一点?
    【解决方案2】:

    我已经成功地解决了这个问题,但不是直接的。

    • 我设法在一个单独的文件夹中进行有角度的前端工作,一旦构建完成,我将构建一个生产版本
    • 将 dist 文件夹中的内容复制到 firebase 项目的 public 文件夹中
    • 在 firebase.json 文件中单独管理路由
    • 在云函数的 index.js 文件中,我们将调用 index.html,就像在平均堆栈应用程序中一样

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-01-30
      • 1970-01-01
      • 2014-10-29
      • 2017-04-15
      • 1970-01-01
      • 2020-08-27
      • 2020-12-05
      相关资源
      最近更新 更多