当前位置: 首页 > 知识库问答 >
问题:

OpenApi 无法解析引用

富涛
2023-03-14

我正在学习OpenApi。我从Swagger那里得到了这个错误:

TypeError: O是未定义的值parameter-row.jsx:149渲染root-injects.jsx:93React 8_renderValidatedComponentWithoutOwnerOrContext_renderValidatedComponent性能初始安装安装组件安装组件安装儿童_createInitialChildren安装组件root-injects.jsx:95: 14

我的json数据是:

{
    "components": {
        "parameters": {
          "q": {
            "in": "query", 
            "name": "q", 
            "style": "form"
          }
        }
    }, 
    "info": {
        "title": "OpenWeatherMap API"
    }, 
    "openapi": "3.0.2", 
    "paths": {
        "/weather": {
          "get": {
              "parameters": [
                {
                  "$ref": "#/components/parameters/q"
                }
              ]
          }
       }
   }
}

共有1个答案

万俟穆冉
2023-03-14

您的API定义缺少一些必需的关键字。如果您将其粘贴到https://editor.swagger.io它将显示错误所在。

具体来说,< code>q参数缺少< code>schema(数据类型定义)。

以下是正确的版本:

{
  "components": {
    "parameters": {
      "q": {
        "in": "query",
        "name": "q",
        "style": "form",
        "schema": {
          "type": "string"
        }
      }
    }
  },
  "info": {
    "title": "OpenWeatherMap API",
    "version": "1.0.0"
  },
  "openapi": "3.0.2",
  "paths": {
    "/weather": {
      "get": {
        "parameters": [
          {
            "$ref": "#/components/parameters/q"
          }
        ],
        "responses": {
          "200": {
            "description": "ok"
          }
        }
      }
    }
  }
}
 类似资料:
  • 我尝试将我的应用程序配置为使用Spring数据 neo4j 。 但是当我提交我的应用程序时,我得到了这个堆栈跟踪跟踪: 这是我的UserRepository: 这是我的porm.xml http://maven.apache.org/maven-v4_0_0.xsd"

  • 我是Spring的新手,在尝试将项目从Java6升级到Java8时遇到了此错误。 我在这里读到,要解决这个问题,要么使用Java 7,要么升级Spring版本。Java 7不行,因为我的目标是升级到Java 8,所以我尝试将Spring版本从2.1.9升级到4.0.0,结果出现以下错误: 以下是相关文件: pom.xml bprpp-memory-context.xml

  • 在尝试部署集成了Spring Security性的jsf项目时,我遇到了以下错误。我今天才开始使用Spring Security性,因为安全领域的javaee安全性太麻烦了。我看了这个教程。所以我不确定这个错误到底意味着什么。我今天也开始了分级,所以我把依赖项包括在内,以防万一。 (我会将错误作为引号放在页面底部)。 应用程序上下文.xml 我的渐变依赖项: 我的web.xml 并promise为

  • 我使用Java8来解析日期并找出两个日期之间的差异。 以下是我的片段: 当我运行时,我得到了错误: java.time.format.DateTimeParseException:无法在索引3解析文本

  • 问题内容: 这是我在JSP文件中的Java代码。我正进入(状态 无法解析Base64Encoder。 为什么会这样呢?我必须添加与相关的内容。任何建议将不胜感激。 问题答案: 看起来您正在使用Web应用程序中包含的jar中不存在的类。您可以尝试以下吗?如有必要,请进行调整,我只是在查看通用文档,然后将其输入- 转到http://commons.apache.org/codec/index.html