Генерация openApi DTO с NestJS без контроллера - PullRequest
0 голосов
/ 02 ноября 2019

Я пишу сервис NestJS, который предоставляет REST API и публикует некоторые сообщения в NATS. Мы используем поддержку NestJS для создания документов OpenAPI, а из документов OpenAPI мы генерируем SDK, который мы импортируем в наших клиентов. Все это прекрасно работает, но только REST API нашего кода находится в SDK.

Мы также хотели бы, чтобы NestJS включал DTO для содержимого сообщений, которые мы публикуем в NATS. Тогда наш SDK также будет включать в себя интерфейсы для этих DTO, а затем наши клиенты могут преобразовывать содержимое сообщения в правильный интерфейс (на основе темы сообщения). Таким образом, издатель события определяет содержимое события, и пользователям этого не нужно копировать интерфейс, но они получают строго типизированный код.

Я попытался добавить @Apiдекораторы для DTO, но, похоже, что если DTO не используется в определении @Controller, он не включается в результирующие документы openApi.

Я надеялся найти способ украсить «случайный»DTO в моем коде, поэтому он будет включен в документацию по swagger и, в свою очередь, включен в сгенерированный SDK. Возможно ли что-то подобное?

...