swagger-codegen: java.io.FileNotFoundException: невозможно прочитать API

Я пытаюсь работать с swagger-codegen генерировать код на основе моего файла ресурсов Swagger. Тем не менее, я сталкиваюсь с следующей ошибкой при попытке создать код:

base path is http://my.documentation.com/api/docs/v1.json
java.io.FileNotFoundException: http://my.documentation.com/api/docs/v1.json/authenticateUser

Кажется, что swagger-codegen пытается прочитать определение метода, добавляя имя операции после v1.json, но я не уверен почему, так как имя операции определено внутри v1.json сам:

{
    "basePath":"https://my.api.com/v1",
    "swaggerVersion":"1.2",
    "apiVersion":"1.0.0",
    "resourcePath":"v1",
    "apis":[
        {
            "path":"/authenticateUser",
            "description":"Authenticates a user into the API",
            "operations":[
                {
                    "method":"GET",
                    "summary":"Authenticates a user into the API",
                    "nickname":"authenticateUser",
                    "parameters":[
                        {
                            "paramType":"query",
                            "name":"username",
                            "type":"string",
                            "required":true,
                            "description":"Name of of user to authenticate"
                        },
                        {
                            "paramType":"query",
                            "name":"password",
                            "type":"string",
                            "required":true,
                            "description":"User's password"
                        }
                    ],
                    "notes":"Returns access token in the response object"
                }
            ]
        },
    ...
    ]
}

Я не совсем уверен, какой формат swagger-codegen ожидает. Должны ли basePath для API и документация для API быть одинаковыми? Обратите внимание, что документация для документации размещается в отдельном basePath, чем сам API. Я не уверен, если это имеет значение.

Также отмечу, что мой файл чванства v1.json был создан с swagger-php и работает нормально с swagger-ui,

1 ответ

Решение

Изменение basePath на http://my.documentation.com/api/docs/ вместо http://my.documentation.com/api/docs/v1.json решил проблему.

Другие вопросы по тегам