Node.js stream 流学习
由于node.js 创建http 是这样的
http.createServer(function(request,response){}).listen(2000);
里面的request 就是reader stream
response 就是write stream
写个网站的都知道request 和response的区别
懂点http的就知道
当上传一个文件的时候,
是把字节上传上去的. 有时候,写限制下载.就是读取流的时候限制下而已
readstream 会触发2个事件
一个是接收流的事件 data
一个是接收完毕后的事件 end

so
写一个上传文件夹的事例,丙得到上传进度
var http=require('http');
var fs = require('fs');
http.createServer(function(request,response){
//把读取的内容,写到文件里面.注意权限问题
var newfile = fs.createWriteStream("D:abc.md");
//获取上传文件的大小
var fileBytes = request.headers["content-length"];
var uploadedByte=0;
request.pipe(newfile);
request.on('data',function(chunk){
//递增.累加
uploadedByte+=chunk.length;
var progress=(uploadedByte/fileBytes)*100;
response.write("progress:"+parseInt(progress,10)+"%n");
console.log(parseInt(progress,10)+"%n");//事实输出进度.方便看
});
request.on('end',function(){
response.write("over");
response.end();
});
}).listen(3000);

可以看到.进度输出.
那么怎么测试呢
上传,其实也就是post.直接用fiddle.就行了

当执行的时候.会把状态输出出来
待续! 总觉得有点问题..
]]>
Node.js stream 流学习的更多相关文章
- 9、Node.js Stream(流)
#########################################################################介绍Node.js Stream(流)Stream 是 ...
- Node.js Stream(流)
Stream 是一个抽象接口,Node 中有很多对象实现了这个接口.例如,对http 服务器发起请求的request 对象就是一个 Stream,还有stdout(标准输出). Node.js,Str ...
- 24.Node.js Stream(流)
转自:http://www.runoob.com/nodejs/nodejs-stream.html Stream 是一个抽象接口,Node 中有很多对象实现了这个接口.例如,对http 服务器发起请 ...
- Node.js Koa框架学习笔记
Koa 基本介绍 Koa是Node.js中非常出名的一款WEB框架,其特点是短小精悍性能强. 它由Express原版人马打造,同时也是Egg框架的设计蓝图,可以说Koa框架的学习性价比是非常高的. 官 ...
- Node.js Express 框架学习
转载:http://JavaScript.ruanyifeng.com/nodejs/express.html#toc0 感觉很牛的样子,不过觉得对初学者没太大用,里面很多例子用的api都没有详细的说 ...
- Node.js系列基础学习-----回调函数,异步
Node.js基础学习 Node.js回调函数 Node.js异步编程的直接体现就是回调,异步编程依托回调来实现,但不是异步.回调函数在完成任务后就会被调用,Node有很多的回调函数,其所有的API都 ...
- Node.js系列基础学习----安装,实现Hello World, REPL
Node.js基础学习 简介 简单的说 Node.js 就是运行在服务端的 JavaScript.Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台.Node.js是一 ...
- NODE.JS开发指南学习笔记2
1.核心模块 核心模块是Node.js的心脏,由一些精简高效的库组成,为其提供了基本的API.2.全局对象 global.所有的的全局变量都是其属性.其根本的作用是作为全局变量的宿主.3.全局变量 1 ...
- Node.js实战项目学习系列(1) 初识Node.js
前言 一直想好好学习node.js都是半途而废的状态,这次沉下心来,想好好的学习下node.js.打算写一个系列的文章大概10几篇文章,会一直以实际案例作为贯穿的学习. 什么是node Node.js ...
随机推荐
- keil中for循环变量递减,无法跳出循环的问题
定义j时应注意其变量类型char,此循环当j=0时,再执行一次则keil中j=0XFF,而不是-1,所以无法跳出循环.但在vc6.0中是可以跳出循环的. 解决办法如下:不能让j的值为负数 uchar ...
- java——递归调用
递归函数调用调用本身,并通过自己的相应参数,这个计算过程中进行层,直到满足某些条件,只要停止呼叫. 递归函数的特点 1.函数要直接或间接调用自身. 2.要有递归终止条件检查.即递归终止的条件被满足后. ...
- 基于SSH的数据库中图片的读写
近期项目中遇到了这个问题,网上查了一些资料所谓是零零散散,这里写篇博文做个笔记. 注:这篇博文中部分类的属性声明未列出,应该不算难,基本都是以private 类型 名称 格式声明,然后配getter ...
- [转] HTML中调用JavaScript的几种情况和规范写法
比较简单,基础. 一.引用外部文件中的js脚本 <script type="text/javascript" src="ext.js"></s ...
- iOS中navigationItem的titleView如何居中
开发过程中,发现titleview很难居中,通过各种尝试终于找到了解决方法. 首先清楚你个概念: leftBarButtonItem,导航条中左侧button. rightBarButtonItem, ...
- Tomcat中Listener的使用范例(转载http://cywhoyi.iteye.com/blog/2075848)
Tomcat是非常有名的开源容器,因其开源我们可以对其做定制化的改变,而且Tomcat在其配置文件方面做了很多注释说明摘要,帮助我们更好的定制化我们所需的功能点. New Tomcat Listene ...
- 解决JFreeChart中文乱码问题
以下是解决X轴,Y轴中文字符乱码的代码: JFreeChart chart = ChartFactory.createBarChart3D("管网损耗",// 图表标题 " ...
- 下拉框上移、下移、添加、移除demo
<meta http-equiv="content-type" content="text/html; charset=UTF-8"> <sc ...
- StringBuilder - new line.
//use this to implement platform-cross new-line. StringBuilder sb = new StringBuilder(); sb.append(S ...
- PT与PX,em(%)区别
字体大小的设置单位,常用的有2种:px.pt.这两个有什么区别呢?先搞清基本概念:px就是表示pixel,像素,是屏幕上显示数据的最基本的点:pt就是point,是印刷行业常用单位,等于1/72英寸. ...