ASP。网络核心中如何使用静态文件

  介绍

这篇文章将为大家详细讲解有关ASP。网络核心中如何使用静态文件,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

索引。html文件

& lt; ! DOCTYPE  html>,   & lt; html>,   & lt; head>大敌;   ,& lt; meta  charset=皍tf-8",/祝辞,   ,& lt; title> Welcome 用ASP.NET  Core,   & lt;/head>大敌;   & lt; body>大敌;   ,你好,世界由来已久!,却;能够message  is 得到our  first  static  HTML 文件只;   & lt;/body>大敌;   & lt;/html>

当您运行应用程序并在浏览器中输入index . html时,您将看到应用程序。运行中间件将抛出一个异常,因为目前在我们的应用程序中什么都没有。

 ASP。网络核心中如何使用静态文件

现在我们的项目中没有中间件会去找文件系统上的任何文件。

为了解决这个问题,通过在解决方案资源管理器中右键单击您的项目并选择管理NuGet包进入到NuGet包管理器。

 ASP。网络核心中如何使用静态文件

搜索Microsoft.AspNet。StaticFiles,会找到静态文件中间件。让我们安装此nuget程序包,现在我们可以在配置方法中注册中间件。

让我们在下面的程序中所示的配置方法中添加UseStaticFiles中间件。

using  Microsoft.AspNet.Builder;,   using  Microsoft.AspNet.Hosting,   using  Microsoft.AspNet.Http,   using  Microsoft.Extensions.DependencyInjection,   using  Microsoft.Extensions.Configuration,   {namespace  FirstAppDemo    {,public  class  Startup ;   ,public 启动(),{,   var 才能;builder =, new  ConfigurationBuilder (),   .AddJsonFile才能(“AppSettings.json");,   Configuration 才能=,builder.Build (),,   }大敌;   ,public  IConfiguration  Configuration {组,得到,,,},   ,   ,//却;能够method  gets  nbsp; by 从而运行时只;   ,//Use 却;能够method 用add  services 用,容器又是;   ,//For  more 方式、提醒请;用configure  your 应用程序,,   ,//visit  http://go.microsoft.com/fwlink/?LinkID=398940    ,public  void  ConfigureServices (IServiceCollection 服务),{,   }大敌;   ,   ,//却;能够method  gets  nbsp; by 从而运行时只;   ,//Use 却;能够method 用configure 从而HTTP  request 管道只   ,public  void 配置(IApplicationBuilder 应用程序),{,   app.UseIISPlatformHandler才能(),,   app.UseDeveloperExceptionPage才能();,app.UseRuntimeInfoPage (),,   app.UseStaticFiles才能(),,   ,,   app.Run才能(async (上下文),=祝辞,{,   throw 才能;new  System.Exception (“throw  Exception");,   var 才能;msg =,配置(“message");,   await 才能context.Response.WriteAsync(味精),,   ,,});   }大敌;   ,,   ,//Entry  point  for 从而应用程序只   ,public  static  void  Main (string [], args),=祝辞,WebApplication.Run (args);,   }大敌;   }

除非你通过传入一些不同的配置参数来覆盖选项,否则静态文件会对于一个给定的请求看作是请求路径。这个请求路径是相对于文件系统。

<李>

如果静态文件根据url找到一个文件,它将直接返回该文件,而不调用下一个块中间件。

<李>

如果没有找到匹配的文件,那么它会继续执行下一个块中间件。

让我们保存启动。cs文件并刷新浏览器。

 ASP。网络核心中如何使用静态文件

你现在可以看到index . HTML文件。你放置在wwwroot文件夹下任何地方的任何JavaScript文件,CSS文件或者HTML文件,您都能够在Asp。网络核心中直接当静态文件使用。

<李>

在如果你想让指数。html作为您的默认文件,IIS一直有这种功能。

<李>

你可以给IIS一个默认文件列表。如果有人访问根目录,在这种情况下,如果IIS找到命名为索引。html的文件,它就会自动将该文件返回给客户端。

<李>

让我们现在开始进行少量更改。首先,我们需要删除强制的错误,然后添加另一块的中间件,这就是UseDefaultFiles。以下是配置方法的实现。

ASP。网络核心中如何使用静态文件