我有一个Node.js应用程序,它是一个http客户端(目前)。所以我在做:
var query = require('querystring').stringify(propertiesObject); http.get(url + query,function(res) { console.log("Got response: " + res.statusCode); }).on('error',function(e) { console.log("Got error: " + e.message); });
这似乎是一个很好的方法来完成这一点。但是我有点iff ed,我不得不做的url查询步骤。这应该由一个公共库封装,但我不看到这里存在于节点的HTTP库,我不知道什么标准的npm包可以完成它。有没有合理广泛使用的方法,更好?
url.format方法保存构建自己的URL的工作。但理想情况下,请求将比这更高级别。
解决方法
检查
request模块。
它比节点的内置http客户端更全面。
var request = require('request'); var propertiesObject = { field1:'test1',field2:'test2' }; request({url:url,qs:propertiesObject},function(err,response,body) { if(err) { console.log(err); return; } console.log("Get response: " + response.statusCode); });