假设我有这样的中间件;
var express = require('express');
var app = express();
app.use(function (req, res, next) {
var host = "example.com";
if (req.host !== host) {
res.redirect(301, host + req.originalUrl);
res.end();
}
});
我需要在这里遵守什么样的规则?
- 我应该打电话
res.end()
吗?(或者res.redirect()
为我做这个?) - 我应该打电话
next()
吗?(或者连接是否检测到请求已经结束并干净地退出?) - 假设我应该调用
next()
,我想这意味着我可能会收到对我的中间件的请求,这些请求可能已经被链中更高的其他中间件结束了;我该如何保护自己免受这种伤害?