nodejs文件上传处理模块formidable

 2015年05月16日    7671

在web开发中,经常遇到处理文件上传的情况。而express框架在4.0版本后就不在支持req.files接收上传文件,对于文件上传,需要加multipart格式数据处理的中间件。multipart数据处理中间件有:busboy, multer, formidable, multiparty, connect-multiparty, pez等。本站使用了formidable插件,比较简单易用。

阅读全文

Node.js使用request模块让http请求变简单

 2015年05月08日    7649

经常会有在后端做http请求的情况,如:访问API或模拟web客户端请求等。业务不复杂的情况下,使用Nodejs的原生http模块的客户端功能可满足需求,但在业务较复杂时使用http模块工作量会比较大,使用第三方request模块会让http请求变的简单。request模块是一个HTTP客户端请求模块,使用非常简单,除支持一般http请求外,还可以更复杂的http请求,如:https请求、请示重定向、数据流转接、form表单提交、HTTP认证、OAuth登录、自定义HTTP header等。

阅读全文

Nodejs中EventEmitter事件发射器的使用

 2015年05月07日    889

Nodejs是基于V8引擎实现的事件驱动IO。事件模块Events是Nodejs的核心模块之一,许多模块都继承自Event模块,因此也能够发射事件。例如,http模块创建HTTP服务器时,会发射"connect"事件,断链接时会发射“ close”事件。这些对象在Node中被称为:事件发射击器。需要处理这些事件的对象可以订阅事件,并将回调函数绑定到这些事件上。事件发射器发射事件时,对应的回调函数就会被调用。

阅读全文

Node.js实现301、302重定向服务

 2015年04月27日    3081

在Web应用中,有时会遇到页面需要Url重定向的情况。Url重定向分为301302两种。301302都是HTTP状态的编码,都代表着某个Url发生了转移。不同的是301重定向是永久的重定向(Moved Permanently),表示本网页永久性转移到另一个地址,搜索引擎在抓取新内容的同时也将旧的网址替换为重定向之后的网址。302重定向是临时的重定向(Moved Temporarily),表示本网页暂时性转移到另一个地址,搜索引擎会抓取新的内容而保留旧的网址。  

阅读全文

Nodejs模块加载机制

 2015年03月09日    613

Node.js的模块分为两类,一类为核心模块(原生模块),一类为第三方模块(文件模块)。在Node中,即可以通过文件路径也可用名称来引用模块,通过名称引用的模块最终会被映报为一个文件路径(除核心模块外)。核心模块优先级高于文件模块,require相同名称的核心模块和文件模块,被加载到的只能是核心模块。

阅读全文

npm包管理机制

 2015年03月09日    1254

NPM,Node包管理器(Node Package Manager)功能包括:第三方包库、管理计算机中安装的包的机制及定义包依赖关系。提供了公共注册服务,程序员发布的包都被放在了NPM中,NPM提供了一个命令行工具用来下载、安装、管理这些包。你可以按NPM标准的包描述符来指定自己的模块或应该需要依赖的第三方包。

阅读全文

利用Buffer类处理缓冲区、编码/解码二进制数据

 2015年03月06日    1093

javascript 最初是被设计为处理html文档的,因此并不善于处理二进制数据。但在后端开发中离不开对二进制数据的处理,为此Node提供了Buffer类,该类封装了对访问连续内存块的操作,可以处理内存中的数据及创建、切分缓冲区,还可以在两个缓冲区之间复制内存数据。

阅读全文