gpt4 book ai didi

asp.net-core - 在 ASP.NET Core MVC 中提供一些静态文件的问题

转载 作者:行者123 更新时间:2023-12-04 15:54:27 24 4
gpt4 key购买 nike

我遇到了 ASP.NET Core 无法正确提供静态文件的问题。我在 wwwroot 下的 node_modules 中有部分应用程序。在大多数情况下,所有文件都有效,但也有异常(exception)。 *.js.map 文件被路由到 MVC Controller ,为我的 MVC 页面而不是实际文件提供服务。结果,我在浏览器中收到错误,例如

解析 SourceMap 失败:http://localhost:5000/node_modules/bootstrap/bootstrap.min.css.map

走同样的路,我的 Web 字体,例如 Bootstrap 中包含的字体,也没有得到正确的服务,也由 MVC 中间件而不是静态文件中间件处理。似乎所有驻留在 node_modules 中的文件都应该路由到我的静态文件中间件,这并没有发生。
谢谢。
公共(public)无效配置(IApplicationBuilder 应用程序,IHostingEnvironment env,ILoggerFactory loggerFactory)
{
loggerFactory.AddConsole();

if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}

app.UseStaticFiles();
app.UseStaticFiles(新的静态文件选项
{
FileProvider = new PhysicalFileProvider(Path.Combine(env.WebRootPath, @"node_modules")),
RequestPath = new PathString("/node_modules"),
ServeUnknownFileTypes = true

});

app.UseMvc(配置 =>
{

config.MapRoute("默认", "{controller}/{action}/{id?}",
新的{ Controller =“家”, Action =“索引”});

config.MapRoute("AngularDeepLinkingRoute", "{*url}",
新的{ Controller =“家”, Action =“索引”});
});
}

最佳答案

问题是如果缺少静态文件,例如 *.js.map 文件,静态文件中间件不会处理请求,它会转到 MVC 中间件。

关于asp.net-core - 在 ASP.NET Core MVC 中提供一些静态文件的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39239829/

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