gpt4 book ai didi

azure - 为什么在发布我的 API 应用程序后,我收到 "A route named ' swagger_docs' is already in the Route Collection”?

转载 作者:行者123 更新时间:2023-12-03 14:30:19 25 4
gpt4 key购买 nike

发布我的 API 应用程序后,我收到 ASP.NET 的黄色错误屏幕。错误消息显示“名为“swagger_docs”的路由已在路由集合中”。

我该如何解决这个问题?

最佳答案

这与 API 应用程序本身无关,而是与 Web API 相关。触发错误的原因非常简单:

  1. 您发布了基于Web API的API应用程序。
  2. 您放弃项目并开始开发基于 Web API 的新 API 应用
  3. 您想要发布新的 API 应用,而不是在第 1 步创建的旧 API 应用。
  4. 您在“发布...”期间选择 API 应用,然后您将获得我们在第 1 步部署的现有 API 应用的发布配置文件。
  5. 您可以使用 Web Deploy 和发布配置文件进行部署,即在旧 API 应用程序之上部署新的 API 应用程序。

这将触发我之前解释过的问题。发生这种情况是因为当您尝试启动应用程序时,Swashbuckle 注册了两条路线。一张是旧的,一张是新的。这是因为旧文件仍然存在于目的地。

要解决此问题,请在 Web 部署期间单击“设置”选项卡,然后展开“文件发布选项”。那里有一个复选框,称为“从目标中删除其他文件”。这将解决该问题,因为它只会保留您在目的地部署的文件,而不保留旧的文件。

Settings -> File Publish Options

希望有帮助。

关于azure - 为什么在发布我的 API 应用程序后,我收到 "A route named ' swagger_docs' is already in the Route Collection”?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29439723/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com