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 相关文章推荐
idTabs基于JQuery的根据URL参数选择Tab插件
Apr 11 Javascript
jquery命令汇总,方便使用jquery的朋友
Jun 26 Javascript
网页防止tab键的使用快速解决方法
Nov 07 Javascript
基于jquery自定义的漂亮单选按钮RadioButton
Nov 19 Javascript
js点击button按钮跳转到另一个新页面
Oct 10 Javascript
JS运动相关知识点小结(附弹性运动示例)
Jan 08 Javascript
jQuery遍历DOM元素与节点方法详解
Apr 14 Javascript
JavaScript校验Number(4,1)格式的数字实例代码
Mar 13 Javascript
echarts鼠标覆盖高亮显示节点及关系名称详解
Mar 17 Javascript
angular4中*ngFor不能对返回来的对象进行循环的解决方法
Sep 12 Javascript
解决echarts的多个折现数据出现坐标和值对不上的问题
Dec 28 Javascript
详解vue高级特性
Jun 09 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的一个基础知识 表单提交
2011/07/04 PHP
PHP 提取图片img标记中的任意属性的简单实例
2013/12/10 PHP
php等比例缩放图片及剪切图片代码分享
2016/02/13 PHP
PHP中SESSION过期设置
2021/03/09 PHP
求解开jscript.encode代码的asp函数
2007/02/28 Javascript
javascript 强制刷新页面的实现代码
2009/12/13 Javascript
JQuery的ready函数与JS的onload的区别详解
2013/11/21 Javascript
javascript中caller和callee详解
2015/08/10 Javascript
jquery动态创建div与input的实例代码
2016/10/12 Javascript
BootStrap Table后台分页时前台删除最后一页所有数据refresh刷新后无数据问题
2016/12/28 Javascript
微信小程序页面开发注意事项整理
2017/05/18 Javascript
手机注册发送验证码倒计时的简单实例
2017/11/15 Javascript
create-react-app修改为多页面支持的方法
2018/05/17 Javascript
Angular搜索场景中使用rxjs的操作符处理思路
2018/05/30 Javascript
CentOS7中源码编译安装NodeJS的完整步骤
2018/10/13 NodeJs
[00:49]完美世界DOTA2联赛10月28日开团时刻:随便打
2020/10/29 DOTA
python迭代器的使用方法实例
2013/11/21 Python
Python迭代用法实例教程
2014/09/08 Python
Python WXPY实现微信监控报警功能的代码
2017/10/20 Python
详解Python map函数及Python map()函数的用法
2017/11/16 Python
python生成每日报表数据(Excel)并邮件发送的实例
2019/02/03 Python
python根据txt文本批量创建文件夹
2020/12/08 Python
python 环境搭建 及python-3.4.4的下载和安装过程
2019/07/20 Python
python实现贪吃蛇游戏源码
2020/03/21 Python
Python3.7 读取音频根据文件名生成脚本的代码
2020/04/07 Python
网页中的电话号码如何实现一键直呼效果_附示例
2016/03/15 HTML / CSS
html5 canvas绘制放射性渐变色效果
2018/01/04 HTML / CSS
英国第一蛋白粉品牌:Myprotein
2016/09/14 全球购物
世界上最大的街头服饰网站:Karmaloop
2017/02/04 全球购物
香港永安旅游网:Wing On Travel
2017/04/10 全球购物
个人思想理论学习的自我鉴定
2013/11/30 职场文书
党员学习十八大感想
2014/01/17 职场文书
机械加工与数控专业自荐书
2014/06/04 职场文书
如何做好员工培训计划?
2019/07/09 职场文书
SQL Server作业失败:无法确定所有者是否有服务器访问权限的解决方法
2021/06/30 SQL Server
Win11绿屏怎么办?Win11绿屏死机的解决方法
2021/11/21 数码科技