我不知道的express

Express是一個簡潔、靈活的node.js,Web應用開發框架 它是一個函數,調用能夠獲得app應用html

express的強大之處:

路由控制:

什麼叫路由?

根據請求的不一樣路徑作不一樣的處理

get:
post:注意在瀏覽器運行的時候使用Postman配置
*:匹配全部路徑node

以上注意:當寫入的響應體爲漢字時,記得設置響應頭express

res.setHeader('Content-Type','text/html:charset=utf-8');

中間件:

中間件的特色:
1.修改後的請求和響應能夠繼續往下傳遞
2.用來進行公用設置和添加公用方法的
3.每一箇中間件都有權利選擇繼續或終止執行
4.一箇中間件處理完能夠把相應的數據傳遞給下一個中間件瀏覽器

模板解析:

第一步:指定模板引擎app

app.set('view engine','ejs')

第二步:設置模板的存放目錄
第三步:模板渲染(render)
渲染模板使用中間件app.use:找到正確模板,讀取模板內容,替換模板內容
ejs文件的注意:
模板匹配時:
=:表示變量轉換之後輸出
-:表示變量渲染成真實HTML內容框架

靜態文件服務

express.static是express內置的惟一一箇中間件,負責託管express應用內的靜態文件
把靜態文件統一放到一個靜態文件夾下面,到時候直接訪問這個文件夾就能夠了
原理函數

params:

var host=req.headers.host;              //host信息
req.pathname=host.split(':')[0];        //主機名
req.port=host.split(':')[1]||80;        //端口號
var urlObj=url.parse(req.url,true);     //獲取路徑,並轉化成對象
var path=urlObj.pathname;               //獲取路徑
req.query=urlObj.query;                 //獲取查詢字符串

send方法:

send與end的區別?
end只能寫入字符串和buffer
send能夠寫入任何格式,切記數字的,要用字符串
文件夾的寫入:sendFile
redirect的寫入:redirect(重定向)
數字的寫入:sendStatuspost

相關文章
相關標籤/搜索