Node.js 找不到Mongoose、MongoDB/Atlas、Express 404
我是MongoDB的新手,我已经对这个问题进行了一段时间的故障排除,但我就是想不出来。我遵循的每一个指南都会导致404,我不确定我做错了什么 以下是我的文件结构:Node.js 找不到Mongoose、MongoDB/Atlas、Express 404,node.js,mongodb,express,mongoose,Node.js,Mongodb,Express,Mongoose,我是MongoDB的新手,我已经对这个问题进行了一段时间的故障排除,但我就是想不出来。我遵循的每一个指南都会导致404,我不确定我做错了什么 以下是我的文件结构: -models image-upload.js -routes recogImages.js server.js image-upload.js const mongoose = require("mongoose"); const imageUploadSchema = new mongoos
-models
image-upload.js
-routes
recogImages.js
server.js
image-upload.js
const mongoose = require("mongoose");
const imageUploadSchema = new mongoose.Schema({
name: {
type: String,
required: true,
},
image: {
type: String,
required: true,
},
uploadDate: {
type: Date,
default: Date.now,
},
});
module.exports = mongoose.model("ImageUpload", imageUploadSchema);
recogImages.js
const express = require("express");
const router = express.Router();
const ImageUpload = require("../models/image-upload");
//Getting all records
router.get("/", (req, res) => {
try {
const recogImages = ImageUpload.find();
res.json(recogImages);
} catch (err) {
res.status(500).json({ message: err.message });
}
});
module.exports = router;
server.js
require("dotenv").config();
const express = require("express");
const mongoose = require("mongoose");
const recogImageRouter = require("./routes/recogImages");
const app = express();
const port = 3000;
app.use(express.json());
mongoose.connect(process.env.DATABASE_URI, {
useNewUrlParser: true,
useUnifiedTopology: true,
});
const db = mongoose.connection;
// db.on("error", (error) => console.log(error));
db.on("error", console.error.bind(console, "MongoDB connection error"));
db.once("open", () => console.log("Connected to Database"));
app.use("./recog-images", recogImageRouter);
app.listen(port, () => console.log("server started on port: " + port));
无论我在本地运行MongoDB还是使用Atlas,我都会获得到数据库的连接,但是当我查询
get时http://localhost:3000/recog-images/
I get 404未找到无法获取/recog images/尝试更改此行:
app.use("./recog-images", recogImageRouter);
致:
很抱歉,这是我方面的一个输入错误,GET请求是这样的,应该可以。我试着为了尝试而改变它,但没有任何改变。对不起,我刚刚意识到我有一个句号。真是个愚蠢的错误,谢谢你的帮助。
app.use("/vbox-recog", recogImageRouter);