正則路由的定義

要求:可以根據(jù)自己設定的正則匹配路徑來執(zhí)行相對應的函數(shù)來響應用戶的內(nèi)容

1、設定正則的匹配路徑和響應的執(zhí)行函數(shù)

app.on('^/$',(req,res)=>{
    res.setHeader("content-type","text/html;charset=utf-8")
    res.end("<h1>這是首頁</h1><img src='./static/example.jpg'>")
})

2、獲取正則路徑創(chuàng)建正則對象

let reg = new RegExp(regStr,'igs');

3、匹配路徑,并調(diào)用相對應的函數(shù)

if(reg.test(req.url)){
    this.reqEvent[key](req,res);
    resState = true
    break;
}

4、判斷是否正則響應過,如果響應過,將不再響應,不能重復響應,會報錯

if(pathObj.dir==this.staticDir && !resState){
        res.setHeader("content-type",this.getContentType(pathObj.ext))
        let rs = fs.createReadStream('./static/'+pathObj.base)
        rs.pipe(res)
}else if(!resState){
    res.setHeader("content-type","text/html;charset=utf-8")
    res.end("<h1>404!頁面找不到</h1>")
}
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容