.NET Core 3.1 Swagger 问题与 IIS

问题描述 投票:0回答:0

情况:

我有一个 .NET Core 3.1 Web API。我想将它托管在服务器上的 IIS 上。 在 IIS 中,我有一个主站点,我希望将 API 托管在该站点下。 例如

  • 站点1
    • 阿皮

地址是,例如https://site1/api

现在,出于某种原因,我无法让 swagger 正常工作。 我正在使用 Swashbuckle.AspNetCore NuGet。

服务器

我已经安装了asp.net core hosting bundle,配置了IIS,我可以访问网站了。

配置服务()

配置()

IIS

2 个应用程序池:

  • 主站点的第一个,.NET CLR v4.0,集成管道
  • 第二个用于 Web API,无托管代码,集成管道

现在,我已经像在 Configure() 示例中那样做了一百万次,但它就是不想工作。

我正在尝试不同的事情,但遇到了错误的混合体,例如:

  • index.html 抛出错误“响应状态为 404 /swagger/v1/swagger.json”,但 .json URL 存在
  • index.html 抛出错误“undefined /swagger/v1/swagger.json”,但是 .json URL 存在

等...

我试过很多方案,比如:

  • 在 SwaggerEndpoint 中使用相关路径 - 不起作用,该路径仅显示为文字字符串
  • 在 app.UseSwagger() 中设置 RouteTemplate - 我从来没有这样做过,但它仍然不起作用

我已经托管了十几次这样的 Web API,我唯一需要做的就是更改 swagger 端点,但由于某种原因,这次它不起作用。

感谢任何帮助。

.net asp.net-core swagger asp.net-core-webapi swagger-ui
© www.soinside.com 2019 - 2024. All rights reserved.