Express.js中间件无法处理默认URL,例如localhost:4200

时间:2019-01-21 08:01:58

标签: node.js express mean-stack

我想处理对中间件的所有请求

我无法处理 localhost:4200 这样的网址。对于 localhost:4200 / samethink 可以正常工作。

我尝试过:

app.use('*', function (req, res, next) {});

app.use('/', function (req, res, next) {});

app.all('*', function (req, res, next) {});

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

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

1 个答案:

答案 0 :(得分:0)

关于Express中的中间件,最重要的事情之一是它们在文件中的写入/包含顺序。鉴于路由匹配,还需要考虑它们的执行顺序。

例如,在下面的代码片段中,第一个函数首先执行,然后执行路由处理程序,然后是结束函数。这个例子总结了如何在路由处理程序之前和之后使用中间件。以及如何将路由处理程序本身用作中间件。

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

//First middleware before response is sent
app.use(function(req, res, next){
   console.log("Start");
   next();
});

//Route handler
app.get('/', function(req, res, next){
   res.send("Middle");
   next();
});

app.use('/', function(req, res){
   console.log('End');
});

app.listen(3000);

middleware execution

参考:

相关问题