【发布时间】:2021-07-09 09:50:14
【问题描述】:
我在 ASP.NET Core 5 中练习中间件。所以我创建了一个新的 Web API 项目并删除了除 Startup.cs 和 Program.cs 之外的所有文件。我还删除了ConfigureServices中的所有服务注册,并删除了Configure方法中的所有中间件。
我在Configure 方法中添加了一个简单的内联Run 中间件,如下所示。
app.Run(async (context) =>
{
await context.Response.WriteAsync("Hello from Run Middleware");
});
当我运行和调试时,我注意到上面的中间件被调用了两次。后来我发现第二个电话是给favicon。当在浏览器中启动 Web API 时,我从网络选项卡中注意到浏览器正在自动发出 favicon 请求,令人困惑的是即使我的项目中没有 favicon,favicon 请求也会成功。
这是project repo的链接。
浏览器会默认调用 favicon 吗?或者有一个选项可以忽略 favicon 调用?忽略时,调用将由浏览器进行,我们需要忽略代码中的请求吗?或者我们可以阻止 favicon 调用本身?
【问题讨论】:
-
你可以查看这个帖子,似乎我们无法阻止这个:link
标签: c# asp.net-core asp.net-core-webapi asp.net-core-middleware