【问题标题】:Is the express app object also an express middleware?express app 对象也是 express 中间件吗?
【发布时间】:2018-08-17 15:48:36
【问题描述】:

我刚开始学习 express,我读到 express 中间件是一个处理 HTTP 请求的 Javascript 函数。它接受 3 个参数:- req、res 和 next。

当我尝试以下代码块时:-

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

var x = app.get('/', function(req, res){
    res.send('Hello World!');
} );

console.log(x.toString());

app.listen(3000, function() {
    console.log('Example app listening on port 3000!');
} );

我看到以下输出:-

function(req, res, next){
    app.handle(req, res, next);
}

那么 express app 对象也是 express 中间件吗?

如果这是一个愚蠢的问题,我很抱歉,但还是想了解一下。

【问题讨论】:

    标签: node.js express


    【解决方案1】:

    .get() 函数是的。大多数快速函数 .use() 等实际上只是特定任务的中间件。 .get 根据提供的 url 检查 req 对象,如果匹配,则运行它的代码。如果不是,则继续通过所有其他 .get() 中间件执行 next()。

    express 的整个生态系统是中间件走向更多的中间件

    【讨论】:

    • 非常感谢您的解释。只是想检查它是否仅用于 .get() 。我刚试过这个:- const app = express(); console.log(app.toString());它仍然返回相同的响应。
    • 我认为 express 只是一个包含所有东西的类,但我可能错了
    猜你喜欢
    • 2018-02-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多