(三)、Express 路由、静态文件、
一、路由
?
路由(Routing)是由一個 URI(或者叫路徑)和一個特定的 HTTP 方法(GET、POST 等)組成的,涉及到應用如何響應客戶端對某個網站節點的訪問。
每一個路由都可以有一個或者多個處理器函數,當匹配到路由時,這個/些函數將被執行。
創建一個一個命名為 app 的 express 實例:
路由的定義由如下結構組成:app.METHOD(PATH, HANDLER)。其中,
app 是一個 express 實例;
METHOD 是某個 HTTP 請求方式中的一個;
PATH 是服務器端的路徑;
HANDLER 是當路由匹配到時需要執行的函數。
下面的代碼展示了幾個路由實例:
// 對網站首頁的訪問返回 "Hello World!" 字樣 app.get('/', function (req, res) {res.send('Hello World!'); });// 網站首頁接受 POST 請求 app.post('/', function (req, res) {res.send('Got a POST request'); });// /user 節點接受 PUT 請求 app.put('/user', function (req, res) {res.send('Got a PUT request at /user'); });// /user 節點接受 DELETE 請求 app.delete('/user', function (req, res) {res.send('Got a DELETE request at /user'); })?
?
二、靜態文件
通過 Express 內置的 express.static 可以方便地托管靜態文件,例如圖片、CSS、JavaScript 文件等。
將靜態資源文件所在的目錄作為參數傳遞給 express.static 中間件就可以提供靜態資源文件的訪問了。例如,假設在 public 目錄放置了圖片、CSS 和 JavaScript 文件,你就可以:
?
app.use(express.static('public'));?
現在,public 目錄下面的文件就可以訪問了。
http://localhost:3000/images/kitten.jpg http://localhost:3000/css/style.css http://localhost:3000/js/app.js http://localhost:3000/images/bg.png http://localhost:3000/hello.html?
所有文件的路徑都是相對于存放目錄的,因此,存放靜態文件的目錄名不會出現在 URL 中。如果你的靜態資源存放在多個目錄下面,你可以多次調用 express.static 中間件:
app.use(express.static('public')); app.use(express.static('files'));?
訪問靜態資源文件時,express.static 中間件會根據目錄添加的順序查找所需的文件。
如果你希望所有通過 express.static 訪問的文件都存放在一個“虛擬(virtual)”目錄(即目錄根本不存在)下面,可以通過為靜態資源目錄指定一個掛載路徑的方式來實現,如下所示:
app.use('/static', express.static('public'));?
現在,你就可以通過帶有 “/static” 前綴的地址來訪問 public 目錄下面的文件了。
http://localhost:3000/static/images/kitten.jpg http://localhost:3000/static/css/style.css http://localhost:3000/static/js/app.js http://localhost:3000/static/images/bg.png http://localhost:3000/static/hello.html?
轉載于:https://www.cnblogs.com/hyqing/p/5017582.html
總結
以上是生活随笔為你收集整理的(三)、Express 路由、静态文件、的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Myeclipse 2014配置SVN详
- 下一篇: MVC Areas的使用