从Loopback4中的模型/控制器元数据生成Open API规范

时间:2018-01-11 13:52:41

标签: node.js typescript decorator loopback openapi

Loopback4 是否提供了一种从装饰模型和控制器生成Open Api Spec的方法?

如果没有,有没有办法在运行时访问控制器和模型元数据?

2 个答案:

答案 0 :(得分:0)

刚才注意到服务器对象公开了返回OpenApiSpec对象的getApiSpec方法。

export class MyController {
    constructor(
        @inject('application.instance') private app: Application,
        @inject('rest.http.request') private req: ServerRequest) { }

    @get('/spec')
    async api(): Promise<OpenApiSpec> {
        const server = await this.app.getServer(RestServer);
        return server.getApiSpec();
    }
}

编辑:此解决方案无法完全解决问题

server.getApiSpec()返回的api规范并不包含有关模型的信息。

答案 1 :(得分:0)

启动LoopBack 4应用程序(假设您没有更改REST服务器端口)后,转到http://localhost:3000/openapi.json,您将获得OpenAPI规范。