我这边习惯上后台使用Asp.Net Core Web API开发,现在到了.Net 6,是一个长期支持版本。当使用Visual Studio创建Asp.Net Core Web API后,入口文件Program.cs下会自动生成类似以下的代码,直接运行就会有一个天气预报的示例接口和Swagger接口文档页面(所以说.net core好用呀):
var apiAppBuilder = WebApplication.CreateBuilder(args); apiAppBuilder.Services.AddControllers(); apiAppBuilder.Services.AddEndpointsApiExplorer(); apiAppBuilder.Services.AddSwaggerGen();
var apiApp = apiAppBuilder.Build(); if (apiApp.Environment.IsDevelopment()) { apiApp.UseSwagger(); apiApp.UseSwaggerUI(); } apiApp.UseAuthorization(); apiApp.MapControllers();
await apiApp.RunAsync();
文件服务
如果想直接让上面代码中的apiAPP支持文件服务,只需要给他绑定静态文件服务相关的内容就行:
var staticfile = new StaticFileOptions(); staticfile.ServeUnknownFileTypes = true; staticfile.FileProvider = new PhysicalFileProvider(physicalPath); staticfile.RequestPath = urlPath; apiApp.UseStaticFiles(staticfile);
如果希望除了提供文件服务之外还可以在浏览器中浏览,就需要绑定文件夹浏览相关的内容:
var dirOp = new DirectoryBrowserOptions(); dirOp.FileProvider = new PhysicalFileProvider(physicalPath); dirOp.RequestPath = urlPath; apiApp.UseDirectoryBrowser(dirOp);