我正在嘗試使用帶有 express 的 node.js 分解我的主 app.js 中的代碼 它最初在 app.js 中的所有內容都在一起時可以作業,但是在我將它們拆分為各種模塊并且我試圖訪問登錄頁面之后,我收到一條錯誤訊息,上面寫著“ Cannot GET/studentLogin ”,這是下面的登錄代碼。登錄頁面是和ejs檔案。
這是用戶登錄模塊代碼:
const express = require("express");
const bodyParser = require("body-parser");
// const student = require(__dirname '/models/studentModel');
const mongoose = require("mongoose");
// module.exports(student)
let studentSchema = {
studentID: String,
password: String,
};
let student = mongoose.model("Student", studentSchema);
const app = express.Router();
// app.set('view engine', 'ejs');
app.use(bodyParser.urlencoded({ extended: true }));
// Getting the Login Page
app.get("/studentLogin", function (req, res, next) {
res.render("studentLogin.ejs");
});
// Logining the Student in
app.post("/studentLogin", (req, res) => {
let loginID = req.body.student_ID;
let loginPassword = req.body.login_password;
student.findOne({ studentID: loginID }, function (err, student) {
if (err) {
console.log(err);
} else if (student.password != loginPassword) {
res.redirect("/");
} else {
res.render("StudentDashboard");
}
});
});
module.exports = app;
這是下面的 app.js 代碼
const express = require("express");
const bodyParser = require("body-parser");
const path = require("path");
const mongoose = require("mongoose");
mongoose.connect("mongodb://localhost:27017/Students");
const studentlogin = require(__dirname "/routes/studentlogin.js");
const app = express();
app.set("views", path.join(__dirname, "views"));
app.set("view engine", "ejs");
app.use(bodyParser.urlencoded({ extended: true }));
app.use(express.static("public"));
app.get("/", (req, res) => {
res.render("home");
});
app.use("/studentlogin", studentlogin);
app.listen(3000, () => {
console.log("Server is up and running");
});
請問我做錯了什么?
uj5u.com熱心網友回復:
您正在安裝從( )/routes/studentlogin.js下匯出的路由器,并且您正在使用后綴( )將路由添加到該路由器中。/studentloginapp.use('/studentlogin', studentlogin)/studentLoginapp.get('/studentLogin', ...
IOW,因為它是您需要導航到/studentlogin/studentLogin查看該視圖,或者只是將路由器安裝在根目錄
app.use(studentlogin);
您也不需要在路由器模塊中單獨配置正文決議器,只需在頂層執行此操作即可。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/503944.html
標籤:javascript 节点.js 表示
下一篇:相同的行程PID
