第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何自動(dòng)為我擁有的所有 api 調(diào)用我的中間件?

如何自動(dòng)為我擁有的所有 api 調(diào)用我的中間件?

HUX布斯 2021-11-25 19:08:28
我在 express 中創(chuàng)建了一個(gè)發(fā)送電子郵件的服務(wù),現(xiàn)在我正在實(shí)現(xiàn)一個(gè)用于 jwt 身份驗(yàn)證的中間件,它已經(jīng)在工作,現(xiàn)在我希望這個(gè)中間件能夠?yàn)槲覔碛械娜魏?api 或我將創(chuàng)建的任何 api 自動(dòng)調(diào)用我試圖在我的根上做以下分配,checkToken 是我在中間件上的功能const app = express();app.use(checkToken, require('./middlewares'))app.use(`${config.URL_BASE}/email`, require('./apis/email'))...目前調(diào)用我正在做的中間件,它的工作非常好router.post('', middleware.checkToken, async function (req, res) {  const {    type: typeCode,...它工作得很好,但我的另一個(gè) api 不調(diào)用中間件,我不想再次明確調(diào)用其他接口router.get('/health', async (req, res) => {  res.status(200).send({ message: 'Ready.' })})
查看完整描述

2 回答

?
BIG陽

TA貢獻(xiàn)1859條經(jīng)驗(yàn) 獲得超6個(gè)贊

要為所有路由調(diào)用中間件,只需app.use(yourMiddleware)在定義任何路由之前執(zhí)行。


要讓中間件調(diào)用一組路由,而不是其他路由,請(qǐng)將您希望中間件調(diào)用的所有路由放在具有僅匹配路由子集的路徑前綴的特定路由器上。然后在定義任何路由之前在該路由器上執(zhí)行中間件。


這是第二個(gè)選項(xiàng)的示例:


const express = require('express');

const app = express();


// load and configure api router

app.use('/api', require('./apiRouter.js'));


app.listen(...);

然后,在 apiRouter.js 中:


const router = require('express').Router();


// middleware that is called for all api routes

router.use(myMiddleware);


// define api routes here

router.get('/list', ...)


module.exports = router;


查看完整回答
反對(duì) 回復(fù) 2021-11-25
?
長(zhǎng)風(fēng)秋雁

TA貢獻(xiàn)1757條經(jīng)驗(yàn) 獲得超7個(gè)贊

router.use()為特定路由器服務(wù)的路由掛載中間件。


router.use(checkToken)

router.get('/health', getHandler)

router.post('/', postHandler)

module.exports = router


查看完整回答
反對(duì) 回復(fù) 2021-11-25
  • 2 回答
  • 0 關(guān)注
  • 253 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)