我有一个 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);
});

这似乎是实现这一目标的一个足够好的方法.然而,我有点恼火,我不得不做url + query步.这应该由一个公共库封装,但我在node的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);
});

Node.js相关问答推荐

需要关于基于角色授权的设计建议

如何解决无法获得本地颁发者证书的问题

控制台显示一个长对象,我可以';每当我发布更新Mongoose数据库的请求时,我都不知道错误是什么,

下一个API路由如何处理多个并发请求?

Mongoose:如何使用填充进行查找

如何在docker容器上正确安装nodejs?

如何使用对象中的常量值验证字符串字段?

React Native:执行 com.android.build.gradle.internal.tasks.Workers$ActionFacade 时发生故障

使用Typescript 时我应该避免循环导入吗?

在express js模型中将js转换为Typescript 时Typescript 错误

如何刷新 youtube-data-api v3 的访问令牌

如何为一个网站实现这 2 个网址.即 www.administrator.sitename.com 和 www.sitename.com?

try 运行迁移时的 Typeorm:缺少必需的参数:dataSource

使用加密模块的流功能获取文件的哈希(即:没有 hash.update 和 hash.digest)

我可以向NPM添加调试脚本吗?

如何在 node 中找到引用站点 URL?

如何从 findOneAndUpdate 方法中获取更新的文档?

如何让 Mocha 加载定义全局挂钩或实用程序的 helper.js 文件?

在 Node.js 上使用 Connect 无法获取 /

deno vs ts-node:有什么区别