问题描述
我有一个使用 dotnet 5.0 创建并部署到 Azure 应用服务的 web api,它正在运行并且 swagger 加载成功,但在 Azure 应用服务中,swagger 未加载也会引发 404 错误,但 API 数据加载成功。
解决方法
检查您的 Startup.cs
文件和 Configure()
方法。
如果您创建了一个新的 .NET 5 项目并自动配置了 Swagger,那么它可能只能在开发环境中启用。
检查您的代码是否如下所示:
if (env.IsDevelopment())
{
app.UseSwagger();
app.UseSwaggerUI(c => c.SwaggerEndpoint("/swagger/v1/swagger.json","Lotus.API.Integration v1"));
}
将 Swagger 配置行移到 if
语句之外,这应该允许它在 Azure 中加载(即在您的 IDE 之外)。