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 模拟用户单击事件
Dec 31 Javascript
JavaScript判断窗口是否最小化的代码(跨浏览器)
Aug 01 Javascript
cookie在javascript中的使用技巧以及隐私在服务器端的设置
Dec 03 Javascript
使用jQuery清空file文件域的解决方案
Apr 12 Javascript
javascript中的self和this用法小结
Feb 08 Javascript
JS实现京东首页之页面顶部、Logo和搜索框功能
Jan 12 Javascript
JavaScript 高性能数组去重的方法
Sep 20 Javascript
vue 弹框产生的滚动穿透问题的解决
Sep 21 Javascript
JavaScript设计模式之责任链模式实例分析
Jan 16 Javascript
angular2 NgModel模块的具体使用方法
Apr 10 Javascript
JQuery使用属性addClass、removeClass和toggleClass实现增加和删除类操作示例
Nov 18 jQuery
js实现有趣的倒计时效果
Jan 19 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
example2.php
2006/10/09 PHP
用PHP为SHOPEX增加日志功能代码
2010/07/02 PHP
PHP根据IP判断地区名信息的示例代码
2014/03/03 PHP
PHP实现无限分类的实现方法
2016/11/14 PHP
php版阿里云OSS图片上传类详解
2016/12/01 PHP
PHP后期静态绑定实例浅析
2018/12/21 PHP
js异或加解密效果代码
2008/06/25 Javascript
jquery必须知道的一些常用特效方法及使用示例(整理)
2013/06/24 Javascript
js无刷新操作table的行和列
2014/03/27 Javascript
浅谈JavaScript的Polymer框架中的behaviors对象
2015/07/29 Javascript
jQuery实现的指纹扫描效果实例(附演示与demo源码下载)
2016/01/26 Javascript
javascript设计模式之策略模式学习笔记
2017/02/15 Javascript
jQuery插件echarts实现的多柱子柱状图效果示例【附demo源码下载】
2017/03/04 Javascript
通过js修改input、select默认字体颜色
2017/04/19 Javascript
详解node-ccap模块生成captcha验证码
2017/07/01 Javascript
详解AngularJS1.x学习directive 中‘& ’‘=’ ‘@’符号的区别使用
2017/08/23 Javascript
JS简单实现动态添加HTML标记的方法示例
2018/04/08 Javascript
vue中当图片地址无效的时候,显示默认图片的方法
2018/09/18 Javascript
vue发送ajax请求详解
2018/10/09 Javascript
es6中比较有用的7个技巧小结
2019/07/12 Javascript
微信小程序实现购物车代码实例详解
2019/08/29 Javascript
详解element-ui表格中勾选checkbox,高亮当前行
2019/09/02 Javascript
JavaScript对象原型链原理详解
2020/02/05 Javascript
VsCode里的Vue模板的实现
2020/08/12 Javascript
vue组件是如何解析及渲染的?
2021/01/13 Vue.js
python 系统调用的实例详解
2017/07/11 Python
浅谈Python基础—判断和循环
2019/03/22 Python
Python3基础教程之递归函数简单示例
2019/06/07 Python
Python中IP地址处理IPy模块的方法
2019/08/16 Python
pytorch中torch.max和Tensor.view函数用法详解
2020/01/03 Python
python 解决Fatal error in launcher:错误问题
2020/05/21 Python
python安装第三方库如xlrd的方法
2020/10/31 Python
工程项目经理岗位职责
2013/12/15 职场文书
迎新生欢迎词
2015/01/23 职场文书
小学副班长竞选稿
2015/11/21 职场文书
Python超简单容易上手的画图工具库推荐
2021/05/10 Python