在 express 中合并 req.params 和 req.url
Merging req.params and req.url in express
首先,我有以下路线:
route: '/list/:param1'
我正在向服务器发送以下请求:
url: '/list/someParam?param2=foo¶m3=bar
在那之后,快递给了我需要的两个重要对象,req.url
和req.params
。
我想得到一个合并网址和参数的对象。我使用以下代码:
module.exports = function (req, res, next) {
var url = require('url');
var queryObject = url.parse(req.url, true).query;
console.log(queryObject);
console.log(req.params);
console.log(req.params.length);
}
所以它记录如下内容:
{ param2: 'foo', param3: 'bar' }
[ param1: 'someParam' ]
0
现在,假设我不知道参数的名称,我需要有一个包含来自 req.url
和 req.params
的信息的对象。以下是我的问题:
1(我怎样才能得到这样的东西:
{ param1: 'someParam', param2: 'foo', param3: 'bar' }
2( 为什么req.params
日志记录类似于数组?如果它是一个数组,为什么它会返回我0
作为它的长度?
提前谢谢。
- 使用
req.query
,而不是再次解析 URL。 - 我猜 Express 对该特定对象有一个自定义
toString
实现。
您还可以使用req.param(name)
按重要性顺序查找两者
相关文章:
- Expressjs/AngularJS:实现req-flash后出错
- Node.js req.params.locationid not grabbing ID
- PassportJS/忘记密码:req.user只定义一次
- 与params的onclick调用
- req.flash()节点表达式4
- React Router,在params之后嵌套路由
- 节点.js快速删除 req.body 不起作用
- 如何防止sails.js在所有视图中传递req对象
- Angularjs - url params:单击时返回 url 中的角度变量
- 在node.jsexpress应用程序中,req.body没有得到<text区域>价值
- 当我将 GET /any 发送到自定义路由“GET /:id”时,我得到 req.params.id = 'favico
- 无法使用快递和猫鼬进行路由,请继续获取"类型错误:req.params.user不是函数;
- Express的格式是什么'req.params
- 什么会阻止 SailsJS 识别 req.params
- 在 express 中合并 req.params 和 req.url
- 在 req.params 中“存储”额外数据的良好做法
- 为什么 req.params 返回未定义
- 在ExpressJS中按顺序获取req.params
- NodeJS Express req.params,enrouten控制器工作不正常
- Req.params.id is undefined