Я пытаюсь обновить свой локальный проект swagger с OpenAPI 2.0 до OpenAPI 3.0.
Я получаю массу ошибок, которые означают, что мой YAML-файл все еще оценивается как OAS2.0:
Project Errors
--------------
#/: Missing required property: swagger
#/: Additional properties not allowed: components,servers,openapi
#/paths/~1auth~1info~1firebase/get/responses/200: Not a valid response definition
#/paths/~1posts~1{id}~1comments/get/responses/200: Not a valid response definition
#/paths/~1posts~1{id}~1comments/get/parameters/2: Not a valid parameter definition
#/paths/~1posts~1{id}~1comments/get/parameters/1: Not a valid parameter definition
#/paths/~1posts~1{id}~1comments/get/parameters/0: Not a valid parameter definition
#/paths/~1users~1{id}~1profile/get/responses/200: Not a valid response definition
I have updated swagger-ui-express to the latest version.
Ниже приведены соответствующие части моего файла server.js:
const YAML = require('yamljs');
const swaggerDocument = YAML.load('./api/swagger/swagger.yaml');
const SwaggerExpress = require('swagger-express-mw');
const swaggerUI = require('swagger-ui-express');
const api = express();
let swaggerConfig =
{
appRoot: __dirname
}
let swaggerOptions =
{
explorer: true
};
api.use('/api/v1/docs/endpoints',
swaggerUI.serve,
swaggerUI.setup(swaggerDocument, swaggerOptions)
);
SwaggerExpress.create(swaggerConfig, function(err, swaggerExpress) {
if (err) { throw err; }
// install middleware
swaggerExpress.register(api);
});
Я обновил swagger-ui-express и swagger-express-mw до последних версий.
Но я все еще получаю вышеупомянутые ошибки.
Я думаю, что дальнейший путь может состоять в том, чтобы не использовать swagger-ui-express и переработать мой код для swagger-ui, но я вижу онлайнчто люди, кажется, работают с этим модулем npm.
Есть идеи, что я делаю не так?