.Net之靜態資源
介紹
靜態文件都存儲在Core Web根目錄中。默認目錄是<content_root>/wwwroot,但可通過 UseWebRoot方法更改訪問目錄。而content_root是指web項目的所有文件夾,包括bin和wwwroot文件夾。
操作
簡單配置
在Configure方法中設置
app.UseStaticFiles();//默認靜態文件目錄是wwwroot
修改默認的靜態文件目錄
在Configure方法中設置
StaticFiles(app, env);
StaticFiles方法
/// <summary>
/// 靜態文件
/// </summary>
/// <param name="app"></param>
/// <param name="env"></param>
/// <returns></returns>
private void StaticFiles(IApplicationBuilder app, IWebHostEnvironment env)
{
//靜態文件重載
app.UseStaticFiles(new StaticFileOptions
{
FileProvider = new PhysicalFileProvider(Path.Combine(env.ContentRootPath, "Upload")), //將目錄切換到靜態文件所在目錄
RequestPath =new PathString("/fileupload"), //虛擬路徑用來訪問靜態文件
OnPrepareResponse = ctx =>
{
const int cacheControl = 60;//設置緩存靜態文件的時間
var headers = ctx.Context.Response.GetTypedHeaders();
headers.CacheControl = new CacheControlHeaderValue
{
MaxAge = TimeSpan.FromSeconds(cacheControl)
};
}
});
}
我們在項目目錄下的Upload文件夾下新建一個1.txt文件,這個時候我們啟動項目,就可以通過地址://localhost:8001/fileupload/1.txt 獲取文件的內容。