Node.js发送HTTP客户端请求并显示响应结果的方法示例


Posted in Javascript onApril 12, 2017

本文实例讲述了Node.js发送HTTP客户端请求并显示响应结果的方法。分享给大家供大家参考,具体如下:

wget.js:发送HTTP客户端请求并显示响应的各种结果

options对象描述了将要发出的请求。

data事件在数据到达时被触发,error事件在发生错误时被触发。

HTTP请求中的数据格式通过MIME协议来声明,例如,提交HTML表单时它的Content-Type会被设置成multipart/form-data

要在HTTP客户端请求中发送数据,只需调用.write方法并写入符合规范的数据(见第二个例子)。

var http = require('http');
var url = require('url');
var util = require('util');
var argUrl = process.argv[2];
var parsedUrl = url.parse(argUrl, true);
var options = {host: null, port: -1, path: null, method: 'GET'};
options.host = parsedUrl.hostname;
options.port = parsedUrl.port;
options.path = parsedUrl.pathname;
if (parsedUrl.search) options.path += "?" + parsedUrl.search;
var req = http.request(options, function(res){
  util.log('STATUS: ' + res.statusCode);
  util.log('HEADERS: ' + util.inspect(res.headers));
  res.setEncoding('utf8');
  res.on('data', function(chunk){
    util.log('BODY: ' + chunk);
  });
  res.on('error', function(err){
    util.log('RESPONSE ERROR: ' + err);
  });
});
req.on('error', function(err){
  util.log('REQUEST ERROR: ' + err);
});
req.end();

node wget.js http://example.com

Node.js发送HTTP客户端请求并显示响应结果的方法示例

又一个发送客户端httprequest例子:使用req.write发送数据

var http = require('http');
var querystring = require('querystring');
var contents = querystring.stringify({
  name: 'joey',
  email: 'joey@joey.com',
  address: 'joey university'
});
var options = {
  host: 'www.joey.com',
  path: '/application/node/post.php',
  method: 'POST',
  headers: {
    'Content-Type': 'application/x-www-form-urlencoded',
    'Content-Length': contents.length
  }
};
var req = http.request(options, function(res){
  res.setEncoding('uft8');
  res.on('data', function(data){
    console.log(data);
  });
});
req.write(contents);
req.end(); //不能漏掉,结束请求,否则服务器将不会收到信息。

希望本文所述对大家nodejs序设计有所帮助。

Javascript 相关文章推荐
11款基于Javascript的文件管理器
Oct 25 Javascript
JavaScript中把数字转换为字符串的程序代码
Jun 19 Javascript
Javascript 正则表达式实现为数字添加千位分隔符
Mar 10 Javascript
JavaScript html5 canvas绘制时钟效果
Mar 01 Javascript
vue父组件通过props如何向子组件传递方法详解
Aug 16 Javascript
jQuery选择器之属性筛选选择器用法详解
Sep 19 jQuery
ES6中的Promise代码详解
Oct 09 Javascript
初探js和简单隐藏效果的实例
Nov 23 Javascript
判断jQuery是否加载完成,没完成继续判断的解决方法
Dec 06 jQuery
vue将时间戳转换成自定义时间格式的方法
Mar 02 Javascript
JavaScript中的类型检查
Feb 03 Javascript
Vue $emit()不能触发父组件方法的原因及解决
Jul 28 Javascript
微信小程序登录态控制深入分析
Apr 12 #Javascript
JavaScript数据结构之二叉查找树的定义与表示方法
Apr 12 #Javascript
微信小程序微信支付接入开发实例详解
Apr 12 #Javascript
JavaScript数据结构之广义表的定义与表示方法详解
Apr 12 #Javascript
JavaScript数据结构之数组的表示方法示例
Apr 12 #Javascript
easyui-edatagrid.js实现回车键结束编辑功能的实例
Apr 12 #Javascript
Vue生命周期示例详解
Apr 12 #Javascript
You might like
基于PHP对XML的操作详解
2013/06/07 PHP
php的debug相关函数用法示例
2016/07/11 PHP
PHP中用Trait封装单例模式的实现
2019/12/18 PHP
Firefox getBoxObjectFor getBoundingClientRect联系
2008/10/26 Javascript
Jquery+CSS3实现一款简洁大气带滑动效果的弹出层
2013/05/15 Javascript
js中settimeout方法加参数
2014/02/28 Javascript
利用JavaScript的AngularJS库制作电子名片的方法
2015/06/18 Javascript
jquery带动画效果幻灯片特效代码
2015/08/27 Javascript
基于jquery实现智能表单验证操作
2016/05/09 Javascript
Javascript中字符串replace方法的第二个参数探究
2016/12/05 Javascript
Es6 写的文件import 起来解决方案详解
2016/12/13 Javascript
深入理解javascript的getTime()方法
2017/02/16 Javascript
Vee-Validate的使用方法详解
2017/09/22 Javascript
vue.js 实现评价五角星组件的实例代码
2018/08/13 Javascript
JS使用Prim算法和Kruskal算法实现最小生成树
2019/01/17 Javascript
angularjs实现table表格td单元格单击变输入框/可编辑状态示例
2019/02/21 Javascript
Node.js中console.log()输出彩色字体的方法示例
2019/12/01 Javascript
js实现文字头像的生成代码
2020/03/07 Javascript
利用Python3分析sitemap.xml并抓取导出全站链接详解
2017/07/04 Python
使用Pyinstaller的最新踩坑实战记录
2017/11/08 Python
对python 通过ssh访问数据库的实例详解
2019/02/19 Python
浅谈Pytorch中的torch.gather函数的含义
2019/08/18 Python
Python3 webservice接口测试代码详解
2020/06/23 Python
CSS3盒子模型详解
2013/04/24 HTML / CSS
Html5百叶窗效果的示例代码
2017/12/11 HTML / CSS
英国高档时尚男装购物网站:MR PORTER
2016/08/09 全球购物
HQhair美国/加拿大:英国化妆品、美容及美发产品商城
2019/04/15 全球购物
英国在线药房和在线医生:LloydsPharmacy
2019/10/21 全球购物
KEEN美国官网:美国人气户外休闲鞋品牌
2021/03/09 全球购物
旅游专业职业生涯规划范文
2014/01/13 职场文书
十佳大学生事迹材料
2014/01/29 职场文书
专题组织生活会思想汇报
2014/10/01 职场文书
小学运动会报道稿
2014/10/04 职场文书
家长通知书家长意见
2014/12/30 职场文书
公司安全管理制度范本
2015/08/05 职场文书
ORM模型框架操作mysql数据库的方法
2021/07/25 MySQL