ExpressJS入门实例


Posted in Javascript onJanuary 14, 2015

一、我们创建项目目录。

> md hello-world

二、进入此目录,定义项目配置文件package.json。
为了准确定义,可以使用命令:
D:\tmp\node\hello-world> npm info express version

npm http GET https://registry.npmjs.org/express

npm http 200 https://registry.npmjs.org/express

3.2.1

现在知道ExpressJS框架的最新版本为3.2.1,那么配置文件为:
{  

    "name": "hello-world",  

    "description": "hello world test app",  

    "version": "0.0.1",  

    "private": true,  

    "dependencies": {  

        "express": "3.2.1"  

    }  

} 

三、使用npm安装项目依赖的包。

> npm install

一旦npm安装依赖包完成,项目根目录下会出现node_modules的子目录。项目配置所需的express包都存放于这里。如果相验证,可以执行命令:
> npm ls

PS D:\tmp\node\hello-world> npm ls  

npm WARN package.json hello-world@0.0.1 No README.md file found!  

hello-world@0.0.1 D:\tmp\node\hello-world  

└─┬ express@3.2.1  

  ├── buffer-crc32@0.2.1  

  ├── commander@0.6.1  

  ├─┬ connect@2.7.7  

  │ ├── bytes@0.2.0  

  │ ├── formidable@1.0.13  

  │ └── pause@0.0.1  

  ├── cookie@0.0.5  

  ├── cookie-signature@1.0.1  

  ├── debug@0.7.2  

  ├── fresh@0.1.0  

  ├── methods@0.0.1  

  ├── mkdirp@0.3.4  

  ├── qs@0.6.1  

  ├── range-parser@0.0.4  

  └─┬ send@0.1.0  

    └── mime@1.2.6 

此命令显示了express包及其依赖关系。

四、创建应用程序

现在开始创建应用程序自身。创建一个名为app.js或server.js的文件,看你喜欢,任选一个。引用express,并使用express()创建一个新应用:

// app.js  

var express = require('express');  

var app = express(); 

接着,我们可以使用app.动词()定义路由。
比如使用"GET /"响应"Hello World"字符串,因为res、req都是Node提供的准确的对象,因此你可以调用res.pipe()或req.on('data', callback)或者其它。

app.get('/hello.txt', function(req, res){  

    var body = 'Hello World';  

    res.setHeader('Content-Type', 'text/plain');  

    res.setHeader('Content-Length', body.length);  

    res.end(body);  

}); 

ExpressJS框架提供了更高层的方法,比如res.send(),它可以省去诸如添加Content-Length之类的事情。如下:

app.get('/hello.txt', function(req, res){  

    res.send('Hello World');  

}); 

现在可以绑定和监听端口了,调用app.listen()方法,接收同样的参数,比如:

五、运行程序

现在运行程序,执行命令:

> node app.js

用浏览器访问地址:http://localhost:3000/hello.txt
可以看到输出结果:
Hello World
Javascript 相关文章推荐
Javascript-Mozilla和IE中的一个函数直接量的问题分析
Aug 12 Javascript
JavaScript 私有成员分析
Jan 13 Javascript
javascript Ext JS 状态默认存储时间
Feb 15 Javascript
js 兼容多浏览器的回车和鼠标焦点事件代码(IE6/7/8,firefox,chrome)
Apr 14 Javascript
jQuery实现点击小图片淡入淡出显示大图片特效
Sep 09 Javascript
详解vue.js的事件处理器v-on:click
Jun 27 Javascript
详谈js原型继承的一些问题
Sep 06 Javascript
详解Webpack多环境代码打包的方法
Aug 03 Javascript
create-react-app使用antd按需加载的样式无效问题的解决
Feb 26 Javascript
Node.js 的 GC 机制详解
Jun 03 Javascript
Vue实现剪贴板复制功能
Dec 31 Javascript
在vue中实现echarts随窗体变化
Jul 27 Javascript
jquery加载图片时以淡入方式显示的方法
Jan 14 #Javascript
JavaScript 学习笔记之变量及其作用域
Jan 14 #Javascript
jquery简单图片切换显示效果实现方法
Jan 14 #Javascript
Node.js开发之访问Redis数据库教程
Jan 14 #Javascript
Backbone.js中的集合详解
Jan 14 #Javascript
jquery增加和删除元素的方法
Jan 14 #Javascript
Node.js开源应用框架HapiJS介绍
Jan 14 #Javascript
You might like
php之字符串变相相减的代码
2007/03/19 PHP
php微信开发之上传临时素材
2016/06/24 PHP
js原生态函数中使用jQuery中的 $(this)无效的解决方法
2011/05/25 Javascript
js函数的引用, 关于内存的开销
2012/09/17 Javascript
javascript中window.event事件用法详解
2012/12/11 Javascript
利用js判断浏览器类型(是否为IE,Firefox,Opera浏览器)
2013/11/22 Javascript
Vue.JS入门教程之处理表单
2016/12/01 Javascript
js实现小窗口拖拽效果
2016/12/03 Javascript
JS中解决谷歌浏览器记住密码输入框颜色改变功能
2017/02/13 Javascript
angular.fromJson与toJson方法用法示例
2017/05/17 Javascript
基于angular6.0实现的一个组件懒加载功能示例
2018/04/12 Javascript
Vue+webpack项目配置便于维护的目录结构教程详解
2018/10/14 Javascript
JavaScript数组、json对象、eval()函数用法实例分析
2019/02/21 Javascript
微信小程序环境下将文件上传到OSS的方法步骤
2019/05/31 Javascript
vue实现路由懒加载及组件懒加载的方式
2019/06/11 Javascript
vue之组件内监控$store中定义变量的变化详解
2019/11/08 Javascript
JavaScript实现文件下载并重命名代码实例
2019/12/12 Javascript
详解Webpack抽离第三方类库以及common解决方案
2020/03/30 Javascript
[02:59]2014DOTA2西雅图国际邀请赛 圆满落幕中国夺冠
2014/07/23 DOTA
在Django的模型中添加自定义方法的示例
2015/07/21 Python
Python读取txt内容写入xls格式excel中的方法
2018/10/11 Python
python反编译学习之字节码详解
2019/05/19 Python
python3在同一行内输入n个数并用列表保存的例子
2019/07/20 Python
Python Web框架之Django框架文件上传功能详解
2019/08/16 Python
pytorch实现从本地加载 .pth 格式模型
2020/02/14 Python
在python中使用nohup命令说明
2020/04/16 Python
有影响力的品牌之家:Our Social Collective
2019/06/08 全球购物
家长会主持词开场白
2014/03/18 职场文书
同学聚会主持词
2014/03/18 职场文书
会计个人实习计划书
2014/08/15 职场文书
四查四看整改措施
2014/09/19 职场文书
赵乐秦在党的群众路线教育实践活动总结大会上的讲话稿
2014/10/25 职场文书
围城读书笔记
2015/06/26 职场文书
毕业设计工作总结
2015/08/14 职场文书
让人感觉高大上的讲话稿怎么写?
2019/07/08 职场文书
Go遍历struct,map,slice的实现
2021/06/13 Golang