Heim  >  Fragen und Antworten  >  Hauptteil

Verstehen Sie die Funktionalität des „next“-Parameters in Node.js Express-Middleware-Funktionen

Ich arbeite an Nodejs und verwende „Express js“ und jetzt arbeite ich an „Middleware-Funktionen“ und das ist mein aktueller Code

const express = require('express')
const app = express()

const myLogger = function (req, res, next) {
  console.log('LOGGED')
  next()
}

app.use(myLogger)

app.get('/', (req, res) => {
  res.send('Hello World!')
})

Ich bin verwirrt über den Parameter „next“ und habe die folgenden Fragen zur Middleware-Funktion

  1. Was nützt „nächstes“? Ist dies eine Weiterleitung zur „nächsten Middleware-Funktion“? Was ist, wenn ja?
  2. Was passiert, wenn es keine „zweite Middleware“ gibt?
  3. Was passiert, wenn wir „next“ nicht verwenden?
  4. Können wir innerhalb von „next“ auf benutzerdefinierte Middleware umleiten?

P粉204079743P粉204079743191 Tage vor390

Antworte allen(1)Ich werde antworten

  • P粉838563523

    P粉8385635232024-04-02 00:15:06

    1. 是的,调用 next 很重要,因为这允许 express.js 移动到下一个中​​间件,否则它将处于悬空位置,应用程序将无法正常工作。

    2)您的请求将到达路由处理程序,您将收到包含消息“Hello World”的响应

    3)如果您不调用next,请求将被终止,应用程序将保持挂起状态

    4)是的,您可以使用 next 重定向到自定义中间件函数。每当使用参数调用 next 时,expresss 都会将其视为错误消息。您可以定义自定义错误处理中间件,以根据您的需要来指导它。

    Antwort
    0
  • StornierenAntwort