gpt4 book ai didi

javascript - 为什么 `app.get(' *')`总是被触发?

转载 作者:行者123 更新时间:2023-12-02 15:11:58 26 4
gpt4 key购买 nike

考虑这个小应用程序:

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:3000localhost:3000/json 时,我都可以从服务器日志中看到星号 * 路线也会被触发。如果改成 app.get("/*")

依然如此

这是为什么呢?我以为 res.sendres.json 停止执行。

最佳答案

当您使用浏览器请求某些内容时,它会自动尝试请求网站图标。由于您的服务器没有为网站图标定义路由,因此它会转到 * 路由,从而导致这种困惑。

关于javascript - 为什么 `app.get(' *')`总是被触发?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34754940/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com