1. 程式人生 > 其它 >Express三大內建中介軟體

Express三大內建中介軟體

Express三大內建中介軟體


自從Express4.16開始,Express就內建了三個常用的中介軟體,可以藉助這三個中介軟體提高專案的開發效率.

express.static()

作用:
快速託管靜態資源的內建中介軟體.一般可用於public目錄.該目錄中存放index.html,img目錄,css目錄,js目錄.
用法:

const express = require("express")
const app = express()
app.use(express.static(路徑))

在路徑中使用絕對路徑,一般使用如下的方式

const express = require("express")
const app = express()
const path = require("path")
app.use(express.static(path.join(__dirname,"public")))

使用path.join()結合__dirname可以獲取到當前檔案所在的目錄,然後就可以指向至公共的靜態檔案目錄了.

express.json()

作用:
解析JSON格式的請求體資料.
用法:

const express = require("express")
const app = express()
app.use(express.json())

express.urlencoded()

作用:
解析urlencoded格式的請求體資料.
一般都用於處理POST請求中的資料
用法:

const express = require("express")
const app = express()
// 通過 express.urlencoded() 這個中介軟體,解析表單中的 urlencoded 格式的資料
// 如果不配置這個解析,則 req.body 預設等於 undefined/
app.use(express.urlencoded({extended;false}))
app.post("/testRouter",(req,res)=>{
    // 使用 req.body 屬性來接收POST請求的資料
    console.log(req.body)
    res.send(req.body,"OK")
})
app.listen(3000)

上面的程式碼中,物件引數extended的值為Boolean,一般填false.