首页 > 解决方案 > 快递:无法路由

问题描述

在我的主页上,我有一个学生登录按钮。单击时,我想重定向到登录页面。但我没有在登录路线内收到请求。

server.js 文件

const express=require('express');
const path=require('path');
const bodyparser=require('body-parser');
const session=require('express-session');
const{v4:uuidv4}=require('uuid');

const router=require('./router');

const app=express();

const port=process.env.PORT||3000;

app.arguments(bodyparser.json())
app.arguments(bodyparser.urlencoded({extended:true}))

app.set('view engine','ejs');

app.arguments(session({
    secret:uuidv4(),
    resave: false,
    saveUninitialized: true
}));


app.use('/route',router)

//home route
app.get('/',(req,res)=>{
    res.render('home');
})

app.listen(port,()=>{console.log("Listening to the server on http://localhost:3000")});

路由器.js 文件

var express=require('express');
var router=express.Router();


//student login page
router.get("/studentlogin",(req,res)=>{
    res.end("Login Successfull");
})

Module.exports=router;

意见/home.ejs 文件

 <form action="/route/studentlogin">
     <input type="submit" class="btn btn-outline-primary align-items-end" value="Student Login">
 </form>

我期望的是打印登录成功,但我收到错误。

错误

无法获取 /route/studentlogin

标签: javascriptexpress

解决方案


  1. 尝试使用app.use而不是app.arguments
  2. 替换bodyParserexpress
  3. 添加cors 库以启用 CORS
  4. 使用导出模块module.exports

服务器.js

const express = require('express');
const path = require('path');
const cors = require('cors')
const session = require('express-session');
const { v4: uuidv4 } = require('uuid');

const router = require('./router');

const app = express();

const port = process.env.PORT || 3000;

app.use(cors())

app.use(express.json());
app.use(express.urlencoded({ extended: true }));

app.set('view engine', 'ejs');

app.use(
  session({
    secret: uuidv4(),
    resave: false,
    saveUninitialized: true,
  })
);

app.use('/route', router);

//home route
app.get('/', (req, res) => {
  res.render('home');
});

app.listen(port, () => {
  console.log('Listening to the server on http://localhost:3000');
});

路由器.js

...
module.exports=router;

推荐阅读