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 相关文章推荐
Prototype 1.5.0_rc1 及 Prototype 1.5.0 Pre0小抄本
Sep 22 Javascript
得到文本框选中的文字,动态插入文字的js代码
Mar 07 Javascript
Javascript Jquery 遍历Json的实现代码
Mar 31 Javascript
Easy.Ajax 部分源代码 支持文件上传功能, 兼容所有主流浏览器
Feb 24 Javascript
16个最流行的JavaScript框架[推荐]
May 29 Javascript
js控制iframe的高度/宽度让其自适应内容
Apr 09 Javascript
JavaScript加入收藏夹功能(兼容IE、firefox、chrome)
May 05 Javascript
微信小程序下拉刷新界面的实现
Sep 28 Javascript
JS继承与闭包及JS实现继承的三种方式
Oct 15 Javascript
详解微信小程序文件下载--视频和图片
Apr 24 Javascript
json_decode 索引为数字时自动排序问题解决方法
Mar 28 Javascript
关于JavaScript数组去重的一些理解汇总
Sep 10 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.ini 中文版
2006/10/28 PHP
Javascript Math对象
2009/08/13 Javascript
jQuery的Ajax的自动完成功能控件简要说明
2013/02/22 Javascript
js操纵跨frame的三级联动select下拉选项实例介绍
2013/05/19 Javascript
jquery 获取标签名(tagName)示例代码
2013/07/11 Javascript
关闭ie窗口清除Session的解决方法
2014/01/10 Javascript
修改或扩展jQuery原生方法的代码实例
2015/01/13 Javascript
js多功能分页组件layPage使用方法详解
2016/05/19 Javascript
jQuery异步提交表单实例
2017/05/30 jQuery
解决BootStrap Fileinput手机图片上传显示旋转问题
2017/06/01 Javascript
Vue自定义事件(详解)
2017/08/19 Javascript
Vue+Flask实现简单的登录验证跳转的示例代码
2018/01/13 Javascript
利用Angular2 + Ionic3开发IOS应用实例教程
2018/01/15 Javascript
vue语法自动转typescript(解放双手)
2019/09/18 Javascript
js中位数不足自动补位扩展padLeft、padRight实现代码
2020/04/06 Javascript
详解使用mocha对webpack打包的项目进行"冒烟测试"的大致流程
2020/04/27 Javascript
JavaScript中EventBus实现对象之间通信
2020/10/18 Javascript
Python装饰器基础详解
2016/03/09 Python
django之跨表查询及添加记录的示例代码
2018/10/16 Python
Python编程在flask中模拟进行Restful的CRUD操作
2018/12/28 Python
Python实现 PS 图像调整中的亮度调整
2019/06/28 Python
python处理大日志文件
2019/07/23 Python
python Elasticsearch索引建立和数据的上传详解
2019/08/04 Python
python爬虫实例之获取动漫截图
2020/05/31 Python
pandas创建DataFrame的7种方法小结
2020/06/14 Python
CSS3简单实现照片墙
2014/12/12 HTML / CSS
美国新蛋IT数码商城:Newegg.com
2016/07/21 全球购物
荷兰皇家航空公司中国官网:KLM中国
2017/12/13 全球购物
Lulu Guinness露露·吉尼斯官网:红唇包
2019/02/03 全球购物
保加利亚服装和鞋类购物网站:Bibloo.bg
2020/11/08 全球购物
Blue Nile中国官网:全球知名的钻石和珠宝网络零售商
2020/03/22 全球购物
中海讯通笔试题
2015/09/15 面试题
黄河的主人教学反思
2014/02/07 职场文书
现役军人家属慰问信
2015/03/24 职场文书
新入职员工工作总结
2015/10/15 职场文书
TV动画《神废柴☆偶像》公布先导PV
2022/03/20 日漫