Swagger 大摇大摆地抛出;无法解析引用“;
作为我学习旅程的一部分(使用TestDriven.io),我正在学习Swagger或OpenApi。我从Swagger那里得到了这个错误:Swagger 大摇大摆地抛出;无法解析引用“;,swagger,Swagger,作为我学习旅程的一部分(使用TestDriven.io),我正在学习Swagger或OpenApi。我从Swagger那里得到了这个错误:无法解析引用:无法解析指针:/components/schema/user在文档中不存在该引用显然在json文件中,为什么它会抱怨?(这里的文本是为了通过站点在帖子中的最小字符限制,与问题本身无关) components部分需要位于JSON文件的顶层,如下所示: { “openapi”:“3.0.2”, “组成部分”:{ “担保计划”:{ “bearerAut
无法解析引用:无法解析指针:/components/schema/user在文档中不存在
该引用显然在json文件中,为什么它会抱怨?(这里的文本是为了通过站点在帖子中的最小字符限制,与问题本身无关)
components
部分需要位于JSON文件的顶层,如下所示:
{
“openapi”:“3.0.2”,
“组成部分”:{
“担保计划”:{
“bearerAuth”:{
“类型”:“http”,
“方案”:“持票人”
}
},
...
},
...
}
错误在于组件
位于路径内
而不是顶层
{
"openapi": "3.0.2",
"info": {
"version": "0.0.1",
"title": "Users Service",
"description": "Swagger spec for documenting the users service"
},
"servers": [
{
"url": "http://localhost"
}
],
"paths": {
"/users/ping": {
"get": {
"summary": "Just a sanity check",
"responses": {
"200": {
"description": "Will return 'pong!'"
}
}
}
},
"/users": {
"get": {
"summary": "Returns all users",
"responses": {
"200": {
"description": "user object"
}
}
}
},
"/users/{id}": {
"get": {
"summary": "Returns a user based on a single user ID",
"parameters": [
{
"name": "id",
"in": "path",
"description": "ID of user to fetch",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"200": {
"description": "user object"
}
}
}
},
"/auth/register": {
"post": {
"summary": "Creates a new user",
"requestBody": {
"description": "User to add",
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/user-full"
}
}
}
}
},
"responses": {
"200": {
"description": "user object"
}
}
},
"/auth/login": {
"post": {
"summary": "Logs a user in",
"requestBody": {
"description": "User to log in",
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/user"
}
}
}
},
"responses": {
"200": {
"description": "Successfully logged in"
}
}
}
},
"/auth/status": {
"get": {
"summary": "Returns the logged in user's status",
"security": [
{
"bearerAuth": []
}
],
"responses": {
"200": {
"description": "user object"
}
}
}
},
"/auth/logout": {
"get": {
"summary": "Logs a user out",
"security": [
{
"bearerAuth": []
}
],
"responses": {
"200": {
"description": "Successfully logged out"
}
}
}
},
"components": {
"securitySchemes": {
"bearerAuth": {
"type": "http",
"scheme": "bearer"
}
},
"schemas": {
"user": {
"properties": {
"email": {
"type": "string"
},
"password": {
"type": "string"
}
}
},
"user-full": {
"properties": {
"username": {
"type": "string"
},
"email": {
"type": "string"
},
"password": {
"type": "string"
}
}
}
}
}
}
}