Express 是一個(gè)自身功能極簡,完全是由
路由和中間件構(gòu)成一個(gè)的 web 開發(fā)框架
概述
路由用于確定應(yīng)用程序如何響應(yīng)對特定端點(diǎn)的客戶機(jī)請求,
包含一個(gè) URI(或路徑)和一個(gè)特定的 HTTP 請求方法(GET、POST 等)。
語法:app.METHOD(PATH, HANDLER)
app 是 express 的實(shí)例。
METHOD 是 HTTP 請求方法。
PATH 是服務(wù)器上的路徑。
HANDLER 是在路由匹配時(shí)執(zhí)行的函數(shù)。
例子:
var express = require('express');
var app = express();
//定向HTTP請求
app.get('/', function(req, res){
res.send('hello world');
});
app.listen(3000);
路由 與 Application
創(chuàng)建一個(gè)Application對象實(shí)例,也就是創(chuàng)建一個(gè)Express應(yīng)用。app對象一般在Express應(yīng)用的app.js文件中創(chuàng)建,通過app對象,可以實(shí)現(xiàn)定向HTTP請求、配置中間件、渲染HTML、配置模板等。
1. 定向HTTP請求。如:app.METHOD、app.param
2. 配置中間件。如:app.route
3. 渲染HTML視圖。如:app.render
4. 設(shè)置模板引擎。如:app.engine
application的主要方法
1. 綁定監(jiān)聽端口: 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. 創(chuàng)建路由:app.METHOD(path, callback [, callback ...])
使用正則表達(dá)式的路由路徑示例:
// 匹配任何路徑中含有 a 的路徑:
app.get(/a/, function(req, res) {
res.send('/a/');
});
// 匹配 butterfly、dragonfly,不匹配 butterflyman、dragonfly man等
app.get(/.*fly$/, function(req, res) {
res.send('/.*fly$/');
});
擴(kuò)展:
1. URI:Uniform Resource Identifier,統(tǒng)一資源標(biāo)識(shí)符;
2. URL:Uniform Resource Locator,統(tǒng)一資源定位符;
3. URN:Uniform Resource Name,統(tǒng)一資源名稱。
正則表達(dá)式到底是什么東西?
字符是計(jì)算機(jī)軟件處理文字時(shí)最基本的單位,可能是字母,數(shù)字,標(biāo)點(diǎn)符號,空格,換行符,漢字等等。字符串是0個(gè)或更多個(gè)字符的序列。文本也就是文字,字符串。說某個(gè)字符串匹配某個(gè)正則表達(dá)式,通常是指這個(gè)字符串里有一部分(或幾部分分別)能滿足表達(dá)式給出的條件。
元字符,metacharacter
| 代碼 | 說明 | |
|---|---|---|
| . | 匹配除換行符以外的任意字符 | |
| \w | 匹配字母或數(shù)字或下劃線或漢字 | |
| \s | 匹配任意的空白符 | |
| \d | 匹配數(shù)字 | |
| ^ | 匹配字符串的開始 | |
| $ | 匹配字符串的結(jié)束 |
參考
正則表達(dá)式
更多精彩內(nèi)容請關(guān)注“IT實(shí)戰(zhàn)聯(lián)盟”哦~~~

IT實(shí)戰(zhàn)聯(lián)盟.jpg