優秀的Express中間件

Express中間件

1、全局中間件

const express = require("express")

const app = express()
// 此處便是一個全局中間件,任何請求都會被攔截在此處
// 如果不執行next(),程序就會卡在這裏
app.use("/", (req, res, next) => {
    console.log("this is a global middleware")
    next()
})

app.get("/user/login", (req, res) => {

    res.send("user login");
})

app.get("/user/register", (req, res) => {

    res.send("user register");
})

app.listen(4000, () => {
    console.log("server start")
})

訪問結果如下:
在這裏插入圖片描述
控制檯輸出:
在這裏插入圖片描述

2、局部中間件

const express = require("express")

const app = express()

// 此處在路由/user/login中加上了局部中間件,第二個參數和第三個參數都是中間件,這個中間件可以加很多層
// 但要記得執行next
app.get("/user/login", (req, res, next) => {

    console.log("this is a local middleware")
    next()
}, (req, res, next) => {

    console.log("this is also a local middleware")
    next()

}, (req, res) => {

    res.send("user login");
})

app.listen(4000, () => {
    console.log("server start")
})

訪問結果如下:
在這裏插入圖片描述
控制檯輸出:
在這裏插入圖片描述

3、內置中間件

const express = require("express")

const path = require("path")

app = express()
// __dirname當前文件所在的文件夾路徑
// app.use("/",express.static(path.join(__dirname, "./test")))
app.use(express.static(path.join(__dirname, "./test")))
// 域名localhost:4000指向到了test目錄
app.listen(4000, () => {
    console.log("server started")
})

當前文件所在的目錄關係:
在這裏插入圖片描述
在瀏覽器中訪問http://localhost:4000/demo.html結果:
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章