Node.js에서 Express를 사용하여 쿼리 매개 변수에 액세스하려고합니다. 웬일인지 req.params
는 빈 객체로 올라오고 있습니다. 여기Express의 쿼리 매개 변수
const express = require('express');
const exphbs = require('express-handlebars');
const bodyParser = require('body-parser');
const https = require('https');
//custom packages ..
//const config = require('./config');
const routes = require('./routes/routes');
const port = process.env.port || 3000;
var app = express();
//templating engine Handlebars
app.engine('handlebars', exphbs({defaultLayout: 'main'}));
app.set('view engine', 'handlebars');
//connect public route
app.use(express.static(__dirname + '/public/'));
app.use(bodyParser.json());
//connect routes
app.use('/', routes);
app.listen(port, () => {
console.log('Server is up and running on ' + port);
});
그리고 내 경로 파일입니다 :
//updated
const routes = require('express').Router();
routes.get('/', (req, res) => {
res.render('home');
});
routes.post('/scan', (req, res) => {
res.status(200);
res.send("hello");
});
routes.get('/scanned', (req, res) => {
const orderID = req.params;
console.log(req);
res.render('home', {
orderID
});
});
module.exports = routes;
서버 및 실행
, 나는http://localhost:3000/scanned?orderid=234
로 이동하고 여기
server.js
내 코드입니다. 현재
routes.js
파일에있는 콘솔 로그에 빈 본문이 표시됩니다 (URL에
orderid
매개 변수가 인식되지 않음).