Swagger UI只显示html,似乎没有CSS。 这是一个使用SwashBuckle Nuget包版本2.5.0的ASP.Net Core 2.1项目。
看起来像: https://i.imgur.com/jvrQ1yE.png
Chrome会发出警告: 资源解释为样式表,但使用MIME类型application / xml传输:" https://####.servicebus.windows.net/hc2/swagger/swagger-ui.css"。
启用Swagger和Swagger UI的代码:
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
services.AddSwaggerGen(c =>
{
c.SwaggerDoc("v1", new Info { Title = "My API", Version = "v1" });
});
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
app.UseStaticFiles();
app.UseSwagger();
app.UseSwaggerUI(c =>
{
c.SwaggerEndpoint("v1/swagger.json", "My API V1");
});
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});
}
我尝试使用c.InjectStylesheet("/swagger/theme-material.css");
内联CSS,但我得到了相同的结果,以及上面的其他警告。
还尝试将SwashBuckle降级到2.4.0
编辑:当使用localhost而不是azure-relay-aspnetserver时,它可以工作,不知道为什么但CSS上的Chrome警告消失了