node.js中的http.get和查询字符串

时间:2012-05-01 10:26:14

标签: node.js express

在Node.js中(使用Express.js),当我这样调用http.request时:

var options = {
    host: '127.0.0.1',
    port: 80,
    path: '/',
    query: {name: "John Doe", age: 50} // <---- problem here
};
http.request(options, function(response) { ... });

一切都很好,除了query部分选项被忽略。文档说明查询字符串必须手动构建,并在path内传递:类似path: '/?name=John%20Doe&age=50'

实现这一目标的最佳方法是什么? query是字符串的简单哈希 - &gt; {string,number}。

1 个答案:

答案 0 :(得分:15)

您要找的是查询字符串http://nodejs.org/api/querystring.html

此外,您可能对此HTTP客户端请求库https://github.com/mikeal/request

感兴趣
var qs = require('querystring');
qs.stringify({ foo: 'bar', baz: ['qux', 'quux'], corge: '' })
// returns
'foo=bar&baz=qux&baz=quux&corge='