我在tagid从URL:获取值方面遇到问题localhost:8888/p?tagid=1234。
tagid
localhost:8888/p?tagid=1234
帮助我更正我的控制器代码。我无法获得tagid价值。
我的代码如下:
app.js:
app.js
var express = require('express'), http = require('http'), path = require('path'); var app = express(); var controller = require('./controller')({ app: app }); // all environments app.configure(function() { app.set('port', process.env.PORT || 8888); app.use(express.json()); app.use(express.urlencoded()); app.use(express.methodOverride()); app.use(app.router); app.use(express.static(path.join(__dirname, 'public'))); app.set('view engine', 'jade'); app.set('views', __dirname + '/views'); app.use(app.router); app.get('/', function(req, res) { res.render('index'); }); }); http.createServer(app).listen(app.get('port'), function() { console.log('Express server listening on port ' + app.get('port')); });
Controller/index.js:
Controller/index.js
function controller(params) { var app = params.app; //var query_string = request.query.query_string; app.get('/p?tagId=/', function(request, response) { // userId is a parameter in the url request response.writeHead(200); // return 200 HTTP OK status response.end('You are looking for tagId' + request.route.query.tagId); }); } module.exports = controller;
routes/index.js:
routes/index.js
require('./controllers'); /* * GET home page. */ exports.index = function(req, res) { res.render('index', { title: 'Express' }); };
快递4.x
要获取URL参数的值,请使用req.params
app.get('/p/:tagId', function(req, res) { res.send("tagId is set to " + req.params.tagId); }); // GET /p/5 // tagId is set to 5
如果要获取查询参数?tagId=5,请使用req.query
?tagId=5
app.get('/p', function(req, res) { res.send("tagId is set to " + req.query.tagId); }); // GET /p?tagId=5 // tagId is set to 5
快递3.x
URL参数
app.get('/p/:tagId', function(req, res) { res.send("tagId is set to " + req.param("tagId")); }); // GET /p/5 // tagId is set to 5
查询参数
app.get('/p', function(req, res) { res.send("tagId is set to " + req.query("tagId")); }); // GET /p?tagId=5 // tagId is set to 5