OWIN 的 app.usestaticfiles 和 app.usefileserver 有什么区别
What is the difference between app.usestaticfiles & app.usefileserver for OWIN
我想知道这两个 OWIN 代码块有什么区别。
在我看来,他们在做同样的工作。
1.
string root = AppDomain.CurrentDomain.BaseDirectory;
var physicalFileSystem = new PhysicalFileSystem(Path.Combine(root, "wwwroot"));
var options = new FileServerOptions
{
RequestPath = PathString.Empty,
EnableDefaultFiles = true,
FileSystem = physicalFileSystem
};
options.StaticFileOptions.FileSystem = physicalFileSystem;
options.StaticFileOptions.ServeUnknownFileTypes = false;
app.UseFileServer(options);
2.
app.UseStaticFiles("wwwroot");
IAppBuilder.UseFileserver
默认结合 UseStaticFiles
UseDefaultFiles
,但不结合 UseDirectorybrowser
。
这意味着:
app.UseFileServer(enableDirectoryBrowsing: true);
启用以上所有功能,而
app.UseFileServer();
只启用静态文件和默认文件,不支持目录浏览。
相反,这意味着 IAppBuilder.UseStaticFiles
仅使网络服务器能够提供静态文件,但不会对默认文档或目录浏览做出任何假设。
我想知道这两个 OWIN 代码块有什么区别。
在我看来,他们在做同样的工作。
1.
string root = AppDomain.CurrentDomain.BaseDirectory;
var physicalFileSystem = new PhysicalFileSystem(Path.Combine(root, "wwwroot"));
var options = new FileServerOptions
{
RequestPath = PathString.Empty,
EnableDefaultFiles = true,
FileSystem = physicalFileSystem
};
options.StaticFileOptions.FileSystem = physicalFileSystem;
options.StaticFileOptions.ServeUnknownFileTypes = false;
app.UseFileServer(options);
2.
app.UseStaticFiles("wwwroot");
IAppBuilder.UseFileserver
默认结合 UseStaticFiles
UseDefaultFiles
,但不结合 UseDirectorybrowser
。
这意味着:
app.UseFileServer(enableDirectoryBrowsing: true);
启用以上所有功能,而
app.UseFileServer();
只启用静态文件和默认文件,不支持目录浏览。
相反,这意味着 IAppBuilder.UseStaticFiles
仅使网络服务器能够提供静态文件,但不会对默认文档或目录浏览做出任何假设。