使用http://localhost:3000/foobar
调用时,按预期工作 - 从第一个路由处理程序调用{{1}},我们从第二个处理程序获取next()
:
'final'
然而,restify中的类似代码似乎并未在第一个处理程序中调用var express = require('express');
var app = express();
var http = require('http');
app.set('port', 3000);
app.get('/:id', function(req, res, next) {
return next();
});
app.get(/.+/, function(req, res, next) {
res.send('final');
});
http.createServer(app).listen(app.get('port'));
:
next()
我对routing documentation求解的理解是,调用var restify = require('restify');
var server = restify.createServer();
server.get('/foobar', function(req, res, next) {
return next();
});
server.get(/.+/, function(req, res, next) {
res.send('final');
});
server.listen(3000, function(req, res) {
console.log('listening on port 3000');
});
将运行链中的下一个处理程序,它与表达的工作方式相匹配。
我错过了什么,我做错了什么?