ฉันพยายามมีเส้นทางเดียวที่ครอบคลุมทุกอย่างภายใต้/foo
รวมถึง/foo
ตัวมันเอง ฉันได้พยายามใช้/foo*
ที่ทำงานสำหรับทุกอย่างยกเว้น/foo
มันไม่ตรงกับ สังเกต:
var express = require("express"),
app = express.createServer();
app.get("/foo*", function(req, res, next){
res.write("Foo*\n");
next();
});
app.get("/foo", function(req, res){
res.end("Foo\n");
});
app.get("/foo/bar", function(req, res){
res.end("Foo Bar\n");
});
app.listen(3000);
ผลลัพธ์:
$ curl localhost:3000/foo
Foo
$ curl localhost:3000/foo/bar
Foo*
Foo Bar
ตัวเลือกของฉันคืออะไร? สิ่งที่ดีที่สุดที่ฉันคิดขึ้นมาคือการกำหนดเส้นทาง/fo*
ซึ่งแน่นอนว่ามันไม่ดีที่สุดเพราะมันจะเข้ากันมาก
/foo*
เส้นทางทั้งหมดเช่นนั้นคุณไม่ต้องการให้เป็นมิดเดิลแวร์แทนหรือไม่?