国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

express框架中間件

這篇具有很好參考價(jià)值的文章主要介紹了express框架中間件。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

1.介紹

說明:Express框架中間件是指在處理HTTP請(qǐng)求前或后對(duì)請(qǐng)求和響應(yīng)進(jìn)行處理的函數(shù)。具體而言,中間件可以:

  1. 執(zhí)行一些公共的邏輯,比如身份驗(yàn)證、日志記錄、錯(cuò)誤處理等。
  2. 修改請(qǐng)求和響應(yīng),比如緩存、壓縮等。
  3. 控制請(qǐng)求流,比如路由控制、URL重定向等。

Express中間件可以是一個(gè)函數(shù)或是一組函數(shù),它們按照定義的順序依次執(zhí)行。

2. 全局中間件

2.1介紹

說明:全局中間件是指在應(yīng)用程序中處理每個(gè)請(qǐng)求之前和之后執(zhí)行的中間件。這些中間件可以用于執(zhí)行各種任務(wù),例如身份驗(yàn)證、日志記錄、處理錯(cuò)誤等。在Express.js中,可以通過app.use()函數(shù)將中間件添加到應(yīng)用程序中,使其成為全局中間件。這樣,每個(gè)請(qǐng)求都會(huì)經(jīng)過這個(gè)中間件,以便在應(yīng)用程序中進(jìn)行統(tǒng)一處理。

2.2聲明中間件(其實(shí)就是一個(gè)函數(shù),函數(shù)有三個(gè)形參而已)

// 聲明中間件函數(shù)
function recordMiddle(req,res,next){
    //服務(wù)器的訪問日志
    //獲取url和ip
    let {url,ip}=req
    //將信息保存在文件中
    fs.appendFileSync(path.resolve(__dirname,"./access.log"),`${url} ${ip}\r\n`)
    //調(diào)用next
    next()
   
}

說明:next()是一個(gè)函數(shù),表示中間件函數(shù)處理完當(dāng)前請(qǐng)求后,將請(qǐng)求轉(zhuǎn)移給下一個(gè)中間件函數(shù)來處理。如果當(dāng)前中間件函數(shù)不調(diào)用next(),則請(qǐng)求就會(huì)被阻塞,無法繼續(xù)向下執(zhí)行。

2.3使用中間件

//使用中間件函數(shù)
app.use(recordMiddle)

?2.4完成獲取url地址練習(xí)

const express=require("express")

const fs=require("fs")

const path=require("path")

const app=express()

// 聲明中間件函數(shù)
function recordMiddle(req,res,next){
    //服務(wù)器的訪問日志
    //獲取url和ip
    let {url,ip}=req
    //將信息保存在文件中
    fs.appendFileSync(path.resolve(__dirname,"./access.log"),`${url} ${ip}\r\n`)
    //調(diào)用next
    next()
   
}
//使用中間件函數(shù)
app.use(recordMiddle)


app.get('/home',(req,res)=>{
 res.send("前臺(tái)首頁")
})

app.get('/admin',(req,res)=>{
    res.send("后臺(tái)首頁")
})

app.all('/*',(req,res)=>{
    res.send("<h1>404</h1>")
})

app.listen(9000,()=>{
    console.log(`9000端口啟動(dòng)成功`);
})

2.5效果

3.路由中間件

3.1介紹

說明:路由中間件是一個(gè)處理HTTP請(qǐng)求的函數(shù),它根據(jù)請(qǐng)求的HTTP方法和路由路徑來匹配一個(gè)或多個(gè)中間件函數(shù),在這些中間件函數(shù)中執(zhí)行一些操作,最終返回一個(gè)HTTP響應(yīng)。

3.2聲明中間件函數(shù)

//聲明中間件,放在受約束的規(guī)則當(dāng)中
let checkCode = (req, res, next) => {
    // 判斷url中code是否包含521
    if (req.query.code === "521") {
      next();
    } else {
      res.send("無效");
    }
  };

3.3使用中間件(放在受約束的規(guī)則當(dāng)中)

app.get("/pay", checkCode, (req, res) => {
  res.send("支付頁面");
});

說明:當(dāng)url地址有/pay的情況下,執(zhí)行checkCode中間件函數(shù)。如果請(qǐng)求參數(shù)的code=521,那么就繼續(xù)進(jìn)行,如果沒有,那么則無效。

3.4練習(xí)

說明:針對(duì)/admin /setting 的請(qǐng)求,需要URL攜帶code=521參數(shù),如沒有攜帶提示[無效]。

//針對(duì)/admin /setting 的請(qǐng)求,需要URL攜帶code=521參數(shù),如沒有攜帶提示[無效]
const express = require("express");

const app = express();

app.get("/home", (req, res) => {
  res.send("前臺(tái)首頁");
});

//聲明中間件,放在受約束的規(guī)則當(dāng)中
let checkCode = (req, res, next) => {
  // 判斷url中code是否包含521
  if (req.query.code === "521") {
    next();
  } else {
    res.send("無效");
  }
};

app.get("/admin", checkCode, (req, res) => {
  res.send("后臺(tái)首頁");
});

app.get("/pay", checkCode, (req, res) => {
  res.send("支付頁面");
});

app.all("*", (req, res) => {
  res.send("<h1>404</h1>");
});
app.listen(9000, () => {
  console.log(`9000端口啟動(dòng)成功`);
});

3.5效果

express框架中間件,Node.js,express,中間件,node.js

?express框架中間件,Node.js,express,中間件,node.js文章來源地址http://www.zghlxwxcb.cn/news/detail-543212.html

到了這里,關(guān)于express框架中間件的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【Node.js從基礎(chǔ)到高級(jí)運(yùn)用】十三、NodeJS中間件高級(jí)應(yīng)用

    【Node.js從基礎(chǔ)到高級(jí)運(yùn)用】十三、NodeJS中間件高級(jí)應(yīng)用

    在現(xiàn)代web開發(fā)中,Node.js因其高效和靈活性而備受青睞。其中,中間件的概念是構(gòu)建高效Node.js應(yīng)用的關(guān)鍵。在這篇博客文章中,我們將深入探討Node.js中間件的高級(jí)應(yīng)用,包括創(chuàng)建自定義中間件、使用第三方中間件等。我們將從基礎(chǔ)講起,逐步深入,旨在為讀者提供全面而深入

    2024年03月22日
    瀏覽(26)
  • 在Node.js中,什么是中間件(middleware)?它們的作用是什么?

    在Node.js中,什么是中間件(middleware)?它們的作用是什么?

    聚沙成塔·每天進(jìn)步一點(diǎn)點(diǎn) 前端入門之旅:探索Web開發(fā)的奇妙世界 歡迎來到前端入門之旅!感興趣的可以訂閱本專欄哦!這個(gè)專欄是為那些對(duì)Web開發(fā)感興趣、剛剛踏入前端領(lǐng)域的朋友們量身打造的。無論你是完全的新手還是有一些基礎(chǔ)的開發(fā)者,這里都將為你提供一個(gè)系統(tǒng)而

    2024年02月06日
    瀏覽(29)
  • express框架中間件

    express框架中間件

    說明:Express框架中間件是指在處理HTTP請(qǐng)求前或后對(duì)請(qǐng)求和響應(yīng)進(jìn)行處理的函數(shù)。具體而言,中間件可以: 執(zhí)行一些公共的邏輯,比如身份驗(yàn)證、日志記錄、錯(cuò)誤處理等。 修改請(qǐng)求和響應(yīng),比如緩存、壓縮等。 控制請(qǐng)求流,比如路由控制、URL重定向等。 Express中間件可以是一

    2024年02月13日
    瀏覽(24)
  • 第九篇:node靜態(tài)文件服務(wù)(中間件)

    第九篇:node靜態(tài)文件服務(wù)(中間件)

    ????江城開朗的豌豆 :個(gè)人主頁 ????個(gè)人專欄? :《 VUE 》?《 javaScript 》 ??? ?個(gè)人網(wǎng)站? :《 江城開朗的豌豆?? 》? ???生活的理想,就是為了理想的生活?! 當(dāng)今互聯(lián)網(wǎng)時(shí)代,Node.js 成為了最受歡迎的服務(wù)器端開發(fā)平臺(tái)之一。作為一名小白,學(xué)習(xí) Node.js 可能會(huì)讓你感

    2024年02月20日
    瀏覽(18)
  • cool Node后端 中實(shí)現(xiàn)中間件的書寫

    cool Node后端 中實(shí)現(xiàn)中間件的書寫

    1.需求 在node后端中,想實(shí)現(xiàn)一個(gè)專門鑒權(quán)的文件配置,可以這樣來解釋 就是 有些接口需要token調(diào)用接口,有些接口不需要使用token 調(diào)用? 這期來詳細(xì)說明一下 ? ? ?什么是中間件中間件顧名思義是指在請(qǐng)求和響應(yīng)中間,進(jìn)行請(qǐng)求數(shù)據(jù)的攔截處理,數(shù)據(jù)校驗(yàn),并且進(jìn)行邏輯處理

    2024年02月20日
    瀏覽(25)
  • Express中間件

    Express中間件

    客戶端發(fā)起的任何請(qǐng)求,到達(dá)服務(wù)器之后,都會(huì)觸發(fā)的中間件 多個(gè)局部生效的中間件 ? 中間件必須在路由之前注冊(cè) ? 應(yīng)用中間件 路由中間件 錯(cuò)誤級(jí)別中間件 ???????????? 錯(cuò)誤級(jí)別中間件必須在所有路由之后 內(nèi)置中間件 舉例:express.json() 08.中間件-自定義中間件_嗶哩

    2024年02月13日
    瀏覽(17)
  • 初識(shí)express/路由/中間件

    初識(shí)express/路由/中間件

    ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ???????? ? ? ? ?

    2024年02月11日
    瀏覽(44)
  • 93 # 實(shí)現(xiàn) express 錯(cuò)誤處理中間件

    93 # 實(shí)現(xiàn) express 錯(cuò)誤處理中間件

    上一節(jié)實(shí)現(xiàn)了 express 的中間件,這一節(jié)來實(shí)現(xiàn)錯(cuò)誤處理中間件 執(zhí)行某一步出錯(cuò)了,統(tǒng)一規(guī)定調(diào)用 next 傳遞的參數(shù)就是錯(cuò)誤信息 先看 express 實(shí)現(xiàn)的demo 然后去訪問: http://localhost:3000/ 錯(cuò)誤處理中間價(jià),里面必須要有 4 個(gè) 參數(shù)(取函數(shù)的長度),放到棧的最底下 下面實(shí)現(xiàn)處理邏

    2024年02月07日
    瀏覽(28)
  • 【Express】文件上傳管理 multer 中間件

    Multer是Node.js中用于處理文件上傳的中間件。它可以幫助你處理文件上傳的相關(guān)邏輯,如接收和保存上傳的文件、限制文件大小、設(shè)置文件類型限制等。只能用于處理 multipart/form-data 類型的表單數(shù)據(jù),它主要用于上傳文件。 下面是使用Multer中間件的基本步驟: 安裝multer:在命

    2024年02月07日
    瀏覽(24)
  • 09-Node.js—express框架

    09-Node.js—express框架

    express 是一個(gè)基于 Node.js 平臺(tái)的極簡(jiǎn)、靈活的 WEB應(yīng)用開發(fā)框架,官方網(wǎng)址:https://www.expressjs.com.cn/ 簡(jiǎn)單來說,express 是一個(gè)封裝好的工具包,封裝了很多功能,便于我們開發(fā) WEB 應(yīng)用(HTTP 服務(wù)) 大家都應(yīng)該玩過我的世界,在我的世界中如果純靠手去砍樹或者挖礦,效率是很低

    2023年04月26日
    瀏覽(27)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包