当前位置: 首页 > 面试题库 >

如何在Express中获取URL参数?

匡翰
2023-03-14
问题内容

我在tagid从URL:获取值方面遇到问题localhost:8888/p?tagid=1234

帮助我更正我的控制器代码。我无法获得tagid价值。

我的代码如下:

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

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

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

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


 类似资料:
  • 问题内容: 假设我的示例网址是 http://example.com/one/two 我说我有以下路线 值将是。 如何在Express中获取 完整的URL ?例如,在上述情况下,我想收到。 问题答案: 该协议可从下载。这里的文档 在express 3.0之前,除非您看到已设置并具有value 的协议,否则可以假定为该协议,在这种情况下,您知道这是您的协议 主机来自Gopal指示 希望您的URL中不

  • 假设我的示例url是 http://example.com/one/two 我说我有以下路线 的值将为。 如何获取Express中的完整url?例如,在上面的情况下,我希望收到。

  • 问题内容: 我正在尝试从烧瓶视图获取url参数: 如何从视图中获取? 问题答案: 你可以使用以下方法检索查询字符串变量 要么 你要接收的查询字符串中的变量在哪里。

  • 问题内容: 我有这样的网址: 如何获取章节和帖子的参数值​​? 我的URL在Chapter参数的值中包含“&”。 问题答案: 您可以在Android中使用Uri类来完成此操作; https://developer.android.com/reference/android/net/Uri.html 这样,您甚至可以从查询参数中获取特定元素;

  • 你好,我来自从URL获取JSON对象 我试着去买一顶帽子- 有人能告诉我我做错了什么吗?

  • 问题内容: 我建立了一个HTTP服务器。我正在使用下面的代码来获取请求URL,但未获取完整URL。 我只得到和。 我想获得完整的客户端请求的URL作为或。 谢谢。 问题答案: 从net / http包的文档中: 您的代码的修改后的版本: 输出示例: