Express系列——路由(二)
Express 是一個自身功能極簡,完全是由路由和中間件構成一個的 web 開發框架
概述
路由用於確定應用程序如何響應對特定端點的客戶機請求,
包含一個 URI(或路徑)和一個特定的 HTTP 請求方法(GET、POST 等)。
語法:app.METHOD(PATH, HANDLER)
app 是 express 的實例。METHOD 是 HTTP 請求方法。PATH 是伺服器上的路徑。HANDLER 是在路由匹配時執行的函數。
例子:
var express = require('express');var app = express();//定向HTTP請求app.get('/', function(req, res){ res.send('hello world');});app.listen(3000);
路由 與 Application
Advertisements
創建一個Application對象實例,也就是創建一個Express應用。app對象一般在Express應用的app.js文件中創建,通過app對象,可以實現定向HTTP請求、配置中間件、渲染HTML、配置模板等。
1. 定向HTTP請求。如:app.METHOD、app.param2. 配置中間件。如:app.route3. 渲染HTML視圖。如:app.render4. 設置模板引擎。如:app.engine
application的主要方法
1. 綁定監聽埠: app.listen(port, [hostname], [backlog], [callback])2. 定義GET/PUT/DELETE/POST app.get(path, callback [, callback ...]) app.put(path, callback [, callback ...]) app.delete(path, callback [, callback ...]) app.put(path, callback [, callback ...])3. 定義路由處理器:app.all(path, callback [, callback ...])4. 創建路由:app.METHOD(path, callback [, callback ...])
使用正則表達式的路由路徑示例:
Advertisements
// 匹配任何路徑中含有 a 的路徑:app.get(/a/, function(req, res) { res.send('/a/');});// 匹配 butterfly、dragonfly,不匹配 butterflyman、dragonfly man等app.get(/.*fly$/, function(req, res) { res.send('/.*fly$/');});
擴展:
1. URI:Uniform Resource Identifier,統一資源標識符;2. URL:Uniform Resource Locator,統一資源定位符;3. URN:Uniform Resource Name,統一資源名稱。
正則表達式到底是什麼東西?
字元是計算機軟體處理文字時最基本的單位,可能是字母,數字,標點符號,空格,換行符,漢字等等。字元串是0個或更多個字元的序列。文本也就是文字,字元串。說某個字元串匹配某個正則表達式,通常是指這個字元串里有一部分(或幾部分分別)能滿足表達式給出的條件。
元字元,metacharacter
代碼 | 說明 | |
---|---|---|
. | 匹配除換行符以外的任意字元 | |
\w | 匹配字母或數字或下劃線或漢字 | |
\s | 匹配任意的空白符 | |
\d | 匹配數字 | |
^ | 匹配字元串的開始 | |
$ | 匹配字元串的結束 |
更多IT互聯網資訊請關注「IT實戰聯盟」哦~~