【问题标题】:When trying to open Swagger-UI getting only a json Response尝试打开 Swagger-UI 时仅获得 json 响应
【发布时间】:2018-05-12 13:57:20
【问题描述】:

在 Web API 项目中请求 Swagger 文档时,我收到以下响应,即使是从 Azure 获得的相同响应。

谁能帮我获得 Swagger UI。

【问题讨论】:

  • 您使用的是哪个框架 - Swashbuckle、Swagger-Net 等?请发布您的配置代码。
  • 我正在使用 Swashbuckle。

标签: asp.net-web-api2 swagger swagger-ui


【解决方案1】:

也许尝试通过不同的 url 请求 Swagger-UI,例如.../swagger/index.html。

【讨论】:

    【解决方案2】:

    我在这里没有使用 .NET,我对您的设置一无所知,但是您是否(例如)将 swagger-ui 资源复制到了您的 webdir?
    看起来您是直接调用 swagger 接口而不是 swagger-ui(这是不同的)。

    https://swagger.io/swagger-ui/

    来自 Swagger-Ui 文档:

    第 1 步:转到 Swagger UI 项目的 GitHub 存储库

    第 2 步:克隆或下载存储库的 zip 文件

    https://github.com/swagger-api/swagger-ui

    用法

    第 1 步:转到本地计算机中包含 Swagger UI 项目的文件夹

    第 2 步:打开 dist 文件夹

    第 3 步:在浏览器上运行 dist/index.html 文件或将 dist 文件夹放在服务器中。

    第 4 步:Swagger UI 现在将在浏览器中运行,默认呈现 Swagger Petstore。 Swagger Petstore 的 JSON 规范可以在这里找到 - http://petstore.swagger.io/v2/swagger.json

    注意:请记住,要加载规范并执行 UI 的试用请求,您需要启用 CORS(请阅读下文)

    第 5 步:您可以在顶部导航栏的字段中提及托管在服务器上的任何现有规范的 YAML 或 JSON 路径。

    【讨论】:

      【解决方案3】:

      用户界面的正确 URL 是 https://localhost:44390/swagger/ui/index

      【讨论】:

        【解决方案4】:

        检查 swagger 是否配置为使用任何自定义路由或前缀。在这种情况下,UI URL 将是 url:port/route-prefix/index.html。路由前缀为空 = url:port/index.html.

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2020-10-20
          • 2021-03-29
          • 2021-06-17
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多