ExpressJS入門指南(二)

chszs發表於2013-05-01
版權宣告:本文為博主chszs的原創文章,未經博主允許不得轉載。 https://blog.csdn.net/chszs/article/details/8872553

ExpressJS入門指南(二)

作者:chszs,轉載需註明。部落格主頁:http://blog.csdn.net/chszs

緊接前一篇《ExpressJS入門指南

六、使用express(1)產生應用

Express框架繫結了一個可執行指令碼,名為express(1)。如果使用npm對Express框架進行全域性安裝,那麼express到處都能使用。

> npm install -g express

express(1)工具提供了簡單的產生應用程式骨架的方式,而且它有一定的使用範圍。比如它只支援有限的幾個模板引擎,而Express自身是支援任意Node構建的模板引擎。可以使用下面的命令進行檢視:

> express –help

PS D: mp
odehello-world> express –help

  Usage: express [options]

  Options:

    -h, –help          output usage information
    -V, –version       output the version number
    -s, –sessions      add session support
    -e, –ejs           add ejs engine support (defaults to jade)
    -J, –jshtml        add jshtml engine support (defaults to jade)
    -H, –hogan         add hogan.js engine support
    -c, –css <engine>  add stylesheet <engine> support (less|stylus) (defaults to plain css)
    -f, –force         force on non-empty directory

如果想生成支援EJS、Stylus、和會話Session的應用,那麼該這樣做:
> express –sessions –css stylus –ejs myapp
D: mp
odehello-world>express –sessions –css stylus –ejs myapp

   create : myapp
   create : myapp/package.json
   create : myapp/app.js
   create : myapp/public
   create : myapp/public/javascripts
   create : myapp/public/images
   create : myapp/public/stylesheets
   create : myapp/public/stylesheets/style.styl
   create : myapp/routes
   create : myapp/routes/index.js
   create : myapp/routes/user.js
   create : myapp/views
   create : myapp/views/index.ejs

   install dependencies:
     $ cd myapp && npm install

   run the app:
     $ node app

與其它Node應用一樣,必須安裝依賴包。
> cd myapp
> npm install

然後執行myapp,執行:
> node myapp.js

使用瀏覽器訪問地址:http://localhost:3000/
可以看到:
Express
Welcome to Express

這就是建立簡單應用的全過程。要記住,Express框架並沒有繫結任何指定的目錄結構,

七、Express框架說明

Express框架是Node.js第三方框架中比較好的Web開發框架。Express除了為HTTP模組提供了更高層的介面外,還實現了很多功能,其中包括:
1)路由控制;
2)模板解析支援;
3)動態檢視;
4)使用者會話;
5)CSRF保護;
6)靜態檔案服務;
7)錯誤控制器;
8)訪問日誌;
9)快取;
10)外掛支援。

要說明一點,Express並不是無所不包的全能框架(像Rails或Django那樣實現了模板引擎甚至是ORM),它只是一個輕量級的Web框架,其主要功能只是對HTTP協議中常用操作的封裝,更多的功能需要外掛或整合其它模組來完成。

比如:

var express = require(`express`);

var app = express();
app.use(express.bodyParser());
app.all(`/`, function(req, res){
	res.send(req.body.title + req.body.text);
});
app.listen(3000);