最近由于工作不忙,正好闲暇时间学学基于 node 的 web开发框架。

现在关于web开发框架除了Express 还有新出的 KOA以及其它一些。

但是想想还是先从 Express 入手吧。因为比较成熟了,社区也健壮。

关于安装 Express 还是比较简单的,开始现在 win 环境下来学习,以后会过渡到 linux上。

首先,假定安装了,nodejs。接下来就创建一个目录。

 mkdir express

 cd express

通过 npm init 命令创建一个 package.json 文件。

 npm init

此时命令将要求你输入几个参数,例如此应用的名称和作者等。可以根据自己实际情况活随便输入,但是到提示下面语句时。需要建立一个入口文件。

 entry point: (index.js)

接下来安装 Express 并将其保存到依赖列表中:

 npm install express --save

装好之后,进目录,在目录下创建一个名为 app.js 的文件, 目录结构如下:

打开 app.js 文件,将下列代码复制进去:

 var express = require('express');  //将express 模块包含到程序中来。
var app = express(); //express 模块入口函数 //添加一个路由http get (app.get(some url, do something);)
app.get('/',function(request,response){
//Express为response对象添加了send()方法,可以处理响应。
response.send('Hello Express!');
}); //监听主机端口3000,返回该主机对象。
var server = app.listen(3000,function(){
//获取主机信息
var host = server.address().address;
//获取端口号
var port = server.address().port;
console.log("start: at http://%s:%s",host,port);
});

通过如下命令启动:

node app.js

浏览器输入:

http://localhost:3000/

会返回 : Hello Express!

通过应用生成器工具 express 可以快速创建一个应用的骨架

通过如下命令安装:

 npm install express-generator -g

例如,下面的示例就是在当前工作目录下创建一个命名为 myapp 的应用:

 express myapp

    create : myapp
create : myapp/package.json
create : myapp/app.js
create : myapp/public
create : myapp/public/javascripts
create : myapp/public/images
create : myapp/routes
create : myapp/routes/index.js
create : myapp/routes/users.js
create : myapp/public/stylesheets
create : myapp/public/stylesheets/style.css
create : myapp/views
create : myapp/views/index.jade
create : myapp/views/layout.jade
create : myapp/views/error.jade
create : myapp/bin
create : myapp/bin/www

-h 选项可以列出所有可用的命令行选项: (例如:express myapp -e)

 $ express -h

   Usage: express [options] [dir]

   Options:

     -h, --help          output usage information
-V, --version output the version number
-e, --ejs add ejs engine support (defaults to jade)
--hbs add handlebars engine support
-H, --hogan add hogan.js engine support
-c, --css <engine> add stylesheet <engine> support (less|stylus|compass|sass) (defaults to plain css)
--git add .gitignore
-f, --force force on non-empty directory

然后安装所有依赖包:(自己第一次装的时候,忘记了这一步,结果,怎么启动都失败)

 cd myapp 

 npm install

启动这个应用(MacOS 或 Linux 平台):

 DEBUG=myapp npm start

Windows 平台使用如下命令:

 set DEBUG=myapp & npm start

然后在浏览器中打开 http://localhost:3000/ 网址就可以看到这个应用了。i

通过 Express 应用生成器创建的应用一般都有如下目录结构:

.
├── app.js
├── bin
│ └── www
├── package.json
├── public
│ ├── images
│ ├── javascripts
│ └── stylesheets
│ └── style.css
├── routes
│ ├── index.js
│ └── users.js
└── views
├── error.jade
├── index.jade
└── layout.jade 7 directories, 9 files

最新文章

  1. SQLServer地址搜索性能优化例子
  2. C# DataGridView中指定的单元格不能编辑
  3. angularjs 遇到的问题汇总
  4. SCP注意事项
  5. STL_advance distance prev next
  6. Android 自动化测试—robotium(八) 拖拽
  7. iOS开发:bitcode介绍和使用cocoapods出现“target overrides the `OTHER_LDFLAGS`……”的解决方案
  8. ng-sortable-支持触屏的拖拽排序
  9. kindeditor使用入门-张国红
  10. springMVC上传错误StandardMultipartHttpServletRequest
  11. angular2+ 组件中用@import进来的css不起作用
  12. vue.js把mounted里面的变量传到data里面
  13. python黑帽子
  14. mysql命令(command)
  15. MongoDB学习笔记(一)安装配置
  16. 接口,定义接口的关键字是 interface 实现接口关键字是 implements
  17. CentOS7 下编译安装 Samba,什么是 SMB/CIFS 协议
  18. Codeforces Beta Round#2
  19. 数制转换-栈的应用(C++实现)
  20. js中caller和callee属性详解

热门文章

  1. TCP Connection Establishment and Termination
  2. ANDROID Porting系列二、配置一个新产品
  3. Little shop of flowers - SGU 104 (DP)
  4. ASP.NET与SOAP协议使用记录
  5. Linux安装sonarQube
  6. 什么是staging server
  7. 《31天成为IT服务达人》之精准运维
  8. AE二次开发中,过滤后的图层,实现缩放至图层效果
  9. android 40 Io编程
  10. Fragment的懒加载