.Net Core 基礎學習筆記(一) Swagger配置使用
阿新 • • 發佈:2021-06-17
1. 安裝swagger 包
2.Startup中 ConfigureServices 方法中新增程式碼
services.AddSwaggerGen(c => { c.SwaggerDoc("service1", new Microsoft.OpenApi.Models.OpenApiInfo { Title = "service1", Version = "1.0" }); });
3.Startup中 Configure 方法中新增程式碼
if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); } // app.UseHttpsRedirection(); app.UseRouting(); app.UseSwagger(c=> { c.RouteTemplate = "{documentName}/swagger.json"; }); app.UseSwaggerUI(c => { c.SwaggerEndpoint("/service1/swagger.json", "Service1 version 1.0"); }); app.UseAuthorization(); app.UseEndpoints(endpoints => { endpoints.MapControllers(); });
4.使用自定義埠,在Program中新增UseUrls()
public static IHostBuilder CreateHostBuilder(string[] args) => Host.CreateDefaultBuilder(args) .UseServiceProviderFactory(new AutofacServiceProviderFactory()) .ConfigureWebHostDefaults(webBuilder => { webBuilder.UseStartup<Startup>(); webBuilder.UseUrls("http://0.0.0.0:8001"); });
5.踩坑點記錄
(1) 使用http訪問需要註釋掉app.UseHttpsRedirection(); 改程式碼會將http 重定向至 https,導致專案無法訪問
(2) docker 部署時 需要使用 0.0.0.0:埠,否則無法正常對映,外網無法訪問