如何部署使用Express Router的Express应用

问题描述 投票:0回答:1

我一直在尝试将我的MERN应用程序的后端上传到heroku,到目前为止,即使我的其他路线都无法使用,我的快速路线也根本无法正常工作。

// index.js-前2条路由有效,但最后一条使用post的路由无效

const express = require("express");
const postRoute = require("./routes/post_route");
const cors = require("cors");
const mongoose = require("mongoose");
const app = express();

app.get("/", function (req, res) {
  res.send("hello world");
});
app.get("/test", function (req, res) {
  res.send({ msg: "this is a test" });
});

app.use("/post", postRoute);

post-route.js

const router = require("express").Router();
let Post = require("../models/post");

router.route("/getPosts").get((req, res, next) => {
  Post.find({}).then(function(p) {
    res.send(p);
  });
});
module.exports = router;

该应用在本地完全可以正常运行,但不能在线使用。

express backend router
1个回答
0
投票

您似乎在index.js中使用_而不是-拼写了错误的后路由,这是应该起作用的代码:

const express = require("express");
const postRoute = require("./routes/post-route");
const cors = require("cors");
const mongoose = require("mongoose");
const app = express();

app.get("/", function (req, res) {
  res.send("hello world");
});
app.get("/test", function (req, res) {
  res.send({ msg: "this is a test" });
});

app.use("/post", postRoute);
© www.soinside.com 2019 - 2024. All rights reserved.