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 相关文章推荐
JavaScript 监听textarea中按键事件
Oct 08 Javascript
JQuery入门——事件切换之toggle()方法应用介绍
Feb 05 Javascript
jquery实现鼠标拖动图片效果示例代码
Jan 09 Javascript
兼容主流浏览器的iframe自适应高度js脚本
Jan 10 Javascript
jquery实现简单的自动播放幻灯片效果
Jun 13 Javascript
JavaScript面向对象之私有静态变量实例分析
Jan 14 Javascript
JavaScript实现图片无缝滚动效果
Jul 07 Javascript
JS自定义滚动条效果简单实现代码
Oct 27 Javascript
客户端(vue框架)与服务器(koa框架)通信及服务器跨域配置详解
Aug 26 Javascript
详解微信小程序实现跑马灯效果(附完整代码)
Apr 29 Javascript
vue watch监控对象的简单方法示例
Jan 07 Vue.js
【js设计模式】SOLID五大设计原则
Mar 24 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获取网络上文件
2006/10/09 PHP
让PHP支持页面回退的两种方法[转]
2007/02/14 PHP
php更新修改excel中的内容实例代码
2014/02/26 PHP
Thinkphp搭建包括JS多语言的多语言项目实现方法
2014/11/24 PHP
Laravel框架表单验证操作实例分析
2019/09/30 PHP
javascript 事件查询综合 推荐收藏
2010/03/10 Javascript
文本框中禁止非数字字符输入比如手机号码、邮编
2013/08/19 Javascript
基于jQuery+PHP+Mysql实现在线拍照和在线浏览照片
2015/09/06 Javascript
AngularJS 模型详细介绍及实例代码
2016/07/27 Javascript
JS常见疑难点分析之match,charAt,charCodeAt,map,search用法分析
2016/12/25 Javascript
微信小程序 五星评价功能的实现
2017/03/09 Javascript
利用require.js与angular搭建spa应用的方法实例
2017/07/19 Javascript
微信小程序实现图片放大预览功能
2020/10/22 Javascript
微信小程序ajax实现请求服务器数据及模版遍历数据功能示例
2017/12/15 Javascript
微信小程序之分享页面如何返回首页的示例
2018/03/28 Javascript
[50:28]LGD女子学院第三期 DOTA2复仇之魂教学
2013/12/24 DOTA
[59:00]DOTA2-DPC中国联赛 正赛 Ehome vs PSG.LGD BO3 第一场 3月7日
2021/03/11 DOTA
Python的ORM框架SQLObject入门实例
2014/04/28 Python
Python信息抽取之乱码解决办法
2017/06/29 Python
python爬虫 爬取超清壁纸代码实例
2019/08/16 Python
如何利用Python开发一个简单的猜数字游戏
2019/09/22 Python
基于python实现判断字符串是否数字算法
2020/07/10 Python
用css3写出气球样式的示例代码
2017/09/11 HTML / CSS
CSS3标注引用的出处和来源的方法
2020/02/25 HTML / CSS
Chicco婴儿用品美国官网:汽车座椅、婴儿推车、高脚椅等
2018/11/05 全球购物
英国儿童设计师服装和玩具购物网站:Zac & Lulu
2020/10/19 全球购物
什么是serialVersionUID
2016/03/04 面试题
介绍一下SQL中union,intersect和minus
2012/04/05 面试题
MYSQL支持事务吗
2013/08/09 面试题
打架检讨书100字
2014/01/08 职场文书
销售简历自我评价
2014/01/24 职场文书
小学安全教育材料
2014/02/17 职场文书
2015年学校体育工作总结
2015/04/22 职场文书
Java移除无效括号的方法实现
2021/08/07 Java/Android
python数字图像处理:图像的绘制
2022/06/28 Python
VMware虚拟机安装 Windows Server 2022的详细图文教程
2022/09/23 Servers