ExpressJS入门指南

简介: 一、我们创建项目目录。 > md hello-world 二、进入此目录,定义项目配置文件package.json。 为了准确定义,可以使用命令:D:\tmp\node\hello-world> npm info express versionnpm http GET https://registry.

一、我们创建项目目录。


> 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,那么配置文件为:
[javascript]   view plain copy print ?
  1. {  
  2.     "name""hello-world",  
  3.     "description""hello world test app",  
  4.     "version""0.0.1",  
  5.     "private"true,  
  6.     "dependencies": {  
  7.         "express""3.2.1"  
  8.     }  
  9. }  

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

> npm install

一旦npm安装依赖包完成,项目根目录下会出现node_modules的子目录。项目配置所需的express包都存放于这里。如果相验证,可以执行命令:
> npm ls
[javascript]   view plain copy print ?
  1. PS D:\tmp\node\hello-world> npm ls  
  2. npm WARN package.json hello-world@0.0.1 No README.md file found!  
  3. hello-world@0.0.1 D:\tmp\node\hello-world  
  4. └─┬ express@3.2.1  
  5.   ├── buffer-crc32@0.2.1  
  6.   ├── commander@0.6.1  
  7.   ├─┬ connect@2.7.7  
  8.   │ ├── bytes@0.2.0  
  9.   │ ├── formidable@1.0.13  
  10.   │ └── pause@0.0.1  
  11.   ├── cookie@0.0.5  
  12.   ├── cookie-signature@1.0.1  
  13.   ├── debug@0.7.2  
  14.   ├── fresh@0.1.0  
  15.   ├── methods@0.0.1  
  16.   ├── mkdirp@0.3.4  
  17.   ├── qs@0.6.1  
  18.   ├── range-parser@0.0.4  
  19.   └─┬ send@0.1.0  
  20.     └── mime@1.2.6  

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

四、创建应用程序


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

[javascript]   view plain copy print ?
  1. // app.js  
  2. var express = require('express');  
  3. var app = express();  

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

[javascript]   view plain copy print ?
  1. app.get('/hello.txt'function(req, res){  
  2.     var body = 'Hello World';  
  3.     res.setHeader('Content-Type''text/plain');  
  4.     res.setHeader('Content-Length', body.length);  
  5.     res.end(body);  
  6. });  

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

[javascript]   view plain copy print ?
  1. app.get('/hello.txt'function(req, res){  
  2.     res.send('Hello World');  
  3. });  

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

[javascript]   view plain copy print ?
  1. app.listen(3000);  
  2. console.log('Listening on port 3000');  

五、运行程序


现在运行程序,执行命令:
> node app.js

用浏览器访问地址:http://localhost:3000/hello.txt
可以看到输出结果:
Hello World
目录
相关文章
|
8月前
|
JSON 自然语言处理 JavaScript
TypeChat 入门指南
TypeChat 是一个革命性的库,它简化了使用 TypeScript 构建自然语言模型界面的过程。 它抹平了自然语言和结构化数据之间的差距,使开发人员更容易将自然语言界面集成到他们的应用程序中。
320 0
|
10月前
|
JavaScript 安全 前端开发
【超详细】Zod 入门教程
Zod 是一个以 TypeScript 为首的模式声明和验证库 ,弥补了 TypeScript 无法在运行时进行校验的问题 ,既可以用在服务端也可以运行在客户端,以保障 Web Apps 的类型安全
314 0
【超详细】Zod 入门教程
MVVMToolkit入门教程
MVVMLight已经停止维护,可以考虑MVVMToolkit来替代,MVVMToolkit官方文档两个框架的基本使用方法类似,下面介绍一下不同之处(建议查看一下上一篇关于MVVMLight的文章)。
|
存储 Web App开发 移动开发
Day 19: EmberJS 入门指南
到目前为止,我们这一系列文章涉及了Bower、AngularJS、GruntJS、PhoneGap和MeteorJS 这些JavaScript技术。今天我打算学习一个名为Ember的框架。本文将介绍如何用Ember创建一个单页面的社交化书签应用。本教程将包括两篇:第1篇介绍客户端代码和用HTML 5本地存储持久保存数据,第2篇中我们将使用一个部署在OpenShift上的REST后端。过几天我会写第2篇。
283 0
Day 19: EmberJS 入门指南
|
缓存
GoogleGuava - 官方教程
GoogleGuava - 官方教程
139 0
GoogleGuava - 官方教程
|
算法 Linux 网络安全
Canokey入门指南:F2A、OpenPGP、PIV
相信大伙都知道yubikey吧,那么Canokey呢?
1488 0
|
Web App开发 Shell PHP
laradock初体验
laravel这个框架也用了很久,一直使用官方提供 Homestead 作为本地开发环境是一个虚拟机,跟 docker 比,它占用体积太大,启动速度慢,同时响应速度很慢, docker 这种更方式,可以轻松方便的搭建整套 PHP 开发环境。
4215 0