Express 框架

Expressnode

  是一個簡潔而靈活的 node.js Web應用框架, 提供了一系列強大特性幫助你建立各類 Web 應用,和豐富的 HTTP 工具。使用 Express 能夠快速地搭建一個完整功能的網站。express

Express 框架核心特性:npm

  • 能夠設置中間件來響應 HTTP 請求。json

  • 定義了路由表用於執行不一樣的 HTTP 請求動做。瀏覽器

  • 能夠經過向模板傳遞參數來動態渲染 HTML 頁面緩存

安裝方式分爲兩種:服務器

  1. npm install 在node.js平臺安裝 安裝後系統自動生成package.json文件cookie

  2. 直接寫package.json文件在進行npm install安裝session

基本用法:app

//開啓服務器
var express = require('express');
//當且僅當請求爲get 方法 且路徑符合時,纔會觸發相應的路由--也就是觸發指定路徑的指定方法
var express = require();
var app = express();
app.get('/',function(res,req){
  res.send('Hello world!');
});
app.get('/customer',function(res,req){
  res.send('customer pase');
})
app.get('/admin',function(){
  res.send('admin page');
});
//監聽端口號3000
app.listen(3000);

 

中間件

(1)掛載中間件的函數:app.use

var http = require('http');

var express = require('express');

var app = express();

使用自定義中間件

app.use('/',function(req , res , next){

     console.log(‘這是自定義中間件’)

     next();  調用next表示執行後續的中間件代碼

});

使用static中間件加載靜態資源

app.use('/', express.static(__dirname + "/statics"));

app.get('/index', function(req, res) {

    res.send("hello browser")

    res.end();

})

http.createServer(app).listen(3000,function(err) {

        if(err) throw err;

        console.log('服務器鏈接成功');

})

 

(2) 基礎中間件介紹

  (1)static靜態資源處理中間件

  (2)logger獲取瀏覽器基本信息中間件

  (3)bodyParser經過post方法提交的數據解析中間件

  (4)query經過get方法提交的數據解析中間件

  (5)cookieParser用戶狀態保存cookie解析中間件

  (6)session啓用session管理用戶狀態中間件

  (7)favicon網站圖標處理中間件

靜態文件

Express 提供了內置的中間件 express.static 來設置靜態文件如:圖片, CSS, JavaScript 等。

你能夠使用 express.static 中間件來設置靜態文件路徑。例如,若是你將圖片, CSS, JavaScript 文件放在 public 目錄下,你能夠這麼寫:

var express = require('express');
var app = express();
 
app.use(express.static('public'));
 
app.get('/', function (req, res) {
   res.send('Hello World');
})
 
var server = app.listen(8081, function () {
 
  var host = server.address().address
  var port = server.address().port
 
  console.log("應用實例,訪問地址爲 http://%s:%s", host, port)
 
})

 

ejs模板引擎

簡單高效的模板語言,經過數據和模板,能夠生成HTML標記文本

ejs特色:

  (1)快速編譯和渲染

  (2)簡單的模板標籤

  (3)自定義標記分隔符

  (4)文件的包含

  (5)支持瀏覽器端和服務器端

  (6)模板靜態緩存

  (7)支持express視圖系統

① ejs成員函數

  (1)Render(str,data,[option]):直接渲染字符串生成HTML

    str:須要解析的字符串模板

    data:數據

    [option]:配置選項

  (2)Compile(str ,[option]):編譯字符串獲得模板函數

    str:須要解析的字符串模板

    [option]:配置選項

    [option]中的相關參數能夠查閱文檔瞭解使用方法

② ejs經常使用標籤

  (1)<%  %>流程控制標籤(中間寫語句)

  (2)<%=  %>輸出標籤(原文輸出HTML標籤,中間寫變量)

  (3)<%-  %>輸出標籤(HTML會被瀏覽器解析)

  (4)<%#  %>註釋標籤

  (5)%對標記轉義

  (6)-%>去除沒有意義的空格

相關文章
相關標籤/搜索