Рассмотрим это небольшое приложение:Почему `app.get ('*')` всегда срабатывает?
var express = require("express");
var app = express();
app.get("/json", function(req, res){
console.log("JSON route");
res.json({foo: "bar"});
});
app.get("/", function(req, res){
console.log("Slash route");
res.send("Hello");
});
app.get("*", function(req, res){
console.log("Star route");
res.redirect("/");
});
app.listen(3000, function(){
console.log("Listening.");
});
Всякий раз, когда я иду либо localhost:3000
или localhost:3000/json
в моем браузере, я могу видеть из моего журнала сервера, что маршрут звезда *
также срабатывает. Это верно, если оно изменено на app.get("/*")
Почему это? Я думал, res.send
и res.json
приостановлено исполнение.
Ты сейчас в браузере, не так ли? ваш браузер, вероятно, запрашивает значок. –
@KevinB Сын пистолета. Если вы опубликуете это в качестве ответа, я буду удивлять его! – RobertAKARobin