Хотя у меня есть правильный маршрут к нужной странице, он все равно показывает, что я не могу получить / ошибку. Поскольку мой первый маршрутизатор get (в agent. js) вызывает таблицу перед ее визуализацией, я не уверен, как подойти к этой проблеме. Это попытка, которую я пробовал ниже, но я получаю сообщение Невозможно GET /function%20router(req,%20res,%20next)%20%7B%0A%20%20%20%20router.handle(req,%20res,% 20next);% 0A% 20% 20% 7D.
Если я попытаюсь отобразить страницу агента в route. js, таблица вызовет ошибку, потому что страница отображается до получения данных из базы данных и визуализации снова в конце.
приложение. js
const routesRouter = require("./routes/routes");
const agentRouter = require("./routes/agent");
app.use("/", routesRouter);
app.use("/agent", agentRouter);
маршрут. js
const express = require("express");
const router = express.Router();
const agentRoute = require("./agent");
router.get("/", async function (req, res) {
res.render("login.ejs");
});
router.post("/login", async function (req, res) {
const { username, password } = req.body;
if (username == 1 && password == 1) {
res.redirect("/agent");
}
else {
return res.status(401).json({
message: "Auth fail",
});
}
router.get("/agent", async function (req, res) {
res.redirect(agentRoute);
});
});
агент. js
const express = require("express");
const router = express.Router();
const mysql = require("mysql");
const db = require("../server");
function getConnection() {
return mysql.createConnection({
host: "localhost",
user: "root",
password: "",
database: "nodejs_login",
});
}
router.get("/agent", function (req, res, next) {
const sql = "SELECT * FROM policy1 WHERE policyAgent = 'Ron'";
db.query(sql, function (err, data, fields) {
console.log(data);
if (err) throw err;
res.render("agenthome", { title: "Policy List", policyData: data });
});
});
module.exports = router;