如何从 POST 获取查询字符串? [复制]
Posted
技术标签:
【中文标题】如何从 POST 获取查询字符串? [复制]【英文标题】:How do I get query string from a POST? [duplicate] 【发布时间】:2014-01-15 11:04:37 【问题描述】:我正在使用node.js 0.10.22
和express 3.4.6
我想发送类似/upload?slides=2
的内容,然后获取slides
的值
我正在使用bodyParser
中间件。
我有这个:
app.get('/',function(req, res)
// show a file upload form
res.writeHead(200, 'content-type': 'text/html');
res.end(
'<form action="/upload?slides=2" enctype="multipart/form-data" method="post">'+
'<input type="text" name="title"><br>'+
'<input type="file" name="upload" multiple="multiple"><br>'+
'<input type="submit" value="Upload">'+
'</form>'
);
);
app.post('/upload',function(req,res)
doLog("/upload","hit upload");
//console.log(req);
console.log("params = ");
console.log(req.body);
...
在控制台中我只得到title: ''
或者我必须将参数放在表单中的其他位置吗?
【问题讨论】:
在 app.post() 中尝试console.dir(req)
@rdodev 没有改变任何东西。
那么slides
是什么,没有那个名字的元素吗?您是否正在尝试获取文件?
@Houseman 当然在功能上不会改变任何东西,但它应该输出 req 结构,这就是你想要看到的。
@adeneo 不,我不是要获取文件。我正在尝试发送未包含在我要上传的文件中的额外信息
【参考方案1】:
使用后我得到了它的工作
console.dir(req)
。从它的输出中,我看到了一个名为 query
的对象,里面有我的参数。
然后我打电话给
console.log(req.query.slides)
它返回了 2
,这正是我想要的。
【讨论】:
那么,基本上您使用了我在 cmets 中的建议并决定自己发布答案? @rdodev 你没说req.query
。你只给了我console.dir
,我赞成你。回答您链接到的类似问题的人也没有提及req.query
。事实上,提问者尝试使用req.query
,但对他不起作用。
我建议你使用console.dir(req)
,但你立即解雇了我说“没有改变任何东西”。我必须向你解释你想看到的是req
的结构,因为那是你可能的答案所在,因为它不在req.body
中。那时你看到req.query
有你想要的内容。未能认识到如果没有这些提示,您将不会走那么远是您的特权。通常在这个网站上,当有人帮助你时,让他们提交答案并接受它是一种很好的礼仪。无论如何,你的问题现在已经解决了,这才是最重要的。
@rdodev 我随后立即解雇了"...I realized that I wrote it wrong, and now I get a giant object"
。我知道没有你的小费我不会走到这一步。但事实就是如此。小费。这就是为什么我给你一个赞成票。你没有给我答案,你只是帮助我达到了它。如果你会提到req.query
,我会要求你做出回答。以上是关于如何从 POST 获取查询字符串? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 SQLAlchemy 将查询结果传递给变量(作为字符串)? [复制]
Java如何保护http连接查询字符串URL请求传递和获取敏感数据? [复制]
如何从 NSTaggedPointerString 中获取字符串? [复制]