我在NodeJs应用中使用路由器,当我尝试导航时无法导航到给定页面。 Register.js放置在路由文件夹中,而server.js放置在父目录中。
这是我的代码:
Server.js
const express = require('express');
const app = express();
app.set('view engine','ejs');
app.use(require('./routes/register'));
const port = process.env.PORT || 3000;
app.listen(port, (req,res) => {
console.log("Server is running at:", +port);
});
Register.js
const express = require('express');
const router = express.Router();
const bodyParser = require('body-parser');
var app = express();
router.use(bodyParser.json);
router.use(bodyParser.urlencoded({extended:true}));
router.get('/users', (req,res) => {
console.log('Hello there');
});
module.exports = router;
现在,当我运行此代码并转到localhost:3000/users
时,什么也没有发生,甚至在控制台中也没有错误显示。
请让我知道我在上面的代码中做错了什么。
答案 0 :(得分:3)
在register.js中使用router.use(bodyParser.json());
。
答案 1 :(得分:0)
您在错误的位置使用了人体分析器。同样,您应该始终使用快速实例来启动那些实例。 还要检查您导入的文件名。 Reigster->注册
更新的代码:
Server.js
const express = require('express');
const bodyParser = require('body-parser');
const app = express();
app.set('view engine','ejs');
app.use(require('./Register'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended:true}));
const port = process.env.PORT || 3000;
app.listen(port, (req,res) => {
console.log("Server is running at:", +port);
});
Register.js
const express = require('express');
const router = express.Router();
const bodyParser = require('body-parser');
router.get('/users', (req,res) => {
console.log('Hello there');
res.sendStatus(200)
});
module.exports = router;