首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

Node.js零起点开发(七)-下传图片并且显示图片

2012-10-25 
Node.js零起点开发(七)-上传图片并且显示图片本节介绍做个例子,实现上传图片,并且显示图片,中间修改了原作

Node.js零起点开发(七)-上传图片并且显示图片

本节介绍做个例子,实现上传图片,并且显示图片,中间修改了原作者demo中的bug。

之前教程中的例子都可以脱离nodejs的目录依赖,即放在任何位置都可以执行,本节的例子和编译环境都必须放在nodejs的目录下,因为牵涉到路径的问题。

安装外部模块

首先我们要安装一个外部模块,该模块是Felix Geisend?rfer开发的node-formidable模块。它对解析上传的文件数据做了很好的抽象。 其实说白了,处理文件上传“就是”处理POST数据 —— 但是,麻烦的是在具体的处理细节,所以,这里采用现成的方案更合适点。

使用该模块,首先需要安装该模块。Node.js有它自己的包管理器,叫NPM。它可以让安装Node.js的外部模块变得非常方便。通过如下一条命令就可以完成该模块的安装:

Node.js零起点开发(七)-下传图片并且显示图片

1.先进入到nodejs的安装路径

cd C:\Program Files (x86)\nodejs

2.下载模块

npm install formidable

注:安装外部模块需要进入nodejs的根目录来执行npm指令

引用外部模块

现在我们就可以用formidable模块了——使用外部模块与内部模块类似,用require语句将其引入即可:

var formidable = require("formidable");
这里该模块做的就是将通过HTTP POST请求提交的表单,在Node.js中可以被解析。我们要做的就是创建一个新的IncomingForm,它是对提交表单的抽象表示,之后,就可以用它解析request对象,获取表单中需要的数据字段。

注:想要能引用到formidable,必须把你的项目放在nodejs的安装目录下,否则会出现下面的错误

Node.js零起点开发(七)-下传图片并且显示图片

requestHandlers的模块

应用程序需要新的部件,因此加入新的模块 -- 已经无需为此感到新奇了。我们来创建一个叫做requestHandlers的模块,并对于每一个请求处理程序,添加一个占位用函数,随后将这些函数作为模块的方法导出:

requestHandlers.js



nodejs执行的结果

Node.js零起点开发(七)-下传图片并且显示图片

浏览器中显示的结果

Node.js零起点开发(七)-下传图片并且显示图片

热点排行