Всем привет! Есть следующее: - nodejs - sequlelize models (много таблиц описаны) -

serverless framework
- lambda (+lambda-proxy)
- api gateway

Вот я хочу сгенерировать нормальную документацию (openapi, swagger, postman, не важно), чтоб было видно, какие входящие параметры принимает API (это есть) и какой результат вернется (обычно это json, типа 'success': true, data: ' модель таблицы sequelize').

Я вообще не смог найти вариантов это сделать. Кто-то сталкивался, как решили?

6 ответов

18 просмотров

Можно попробовать tsoa - https://github.com/lukeautry/tsoa Позволяет сгенерить OpenAPI спеку из TypeScript кода. Сразу оговорюсь что для serverless приложений не пробовал это использовать.

Me👀- Автор вопроса
Vladimir Shiryaev
Можно попробовать tsoa - https://github.com/lukeau...

Спасибо, учту. Но у меня, конечно же, простой js:))

я пользовалась этими пакетами "swagger-jsdoc" "swagger-ui-express" но к сожалению они магию не делают - сначала ты руками берешь и описываешь вход/выход API эндпоинтов (в формате swagger) в Jsdoc комментах в коде над каждым контроллером а потом просто swagger-jsdoc собирает все эти jsdoc кусочки в один большой swagger файл и swagger-ui-express позволяет сгенерить удобный UI. трудозатраты в итоге такие же как просто сидеть писать swagger файл, просто за счет того что пишешь части swaggerа в комментах в коде - потом больше вероятность не забыть поправить когда поменялось API

У нас appsync (тоже сервелесс на лямбдах). Так что, графкл - уже сам по себе документация...

а что, сейчас сваггер дефинишен с Api Gateway уже не выгружается?

Me👀- Автор вопроса
R V
а что, сейчас сваггер дефинишен с Api Gateway уже ...

Выгружается, но не показывает что будет в response :)

Похожие вопросы

Обсуждают сегодня

Кто хочет поиграться в легкий взлом специально уязвимого приложения? :) Ваше задани - вы студент группы 416 - оценку в 100 баллов и найти 10 флагов (текстовых) формата Step0...
Andrii Kurdiumov
4
Привет Хочу сделать аналог iCloud’а для своих проектов, чтобы пользовательская информация хранилась в облаке, была доступна во всех сервисах, её можно было подсасывать везде)...
Виталий
9
код Event::listen('cms.page.display', function (&$content, $slug, $page, $html) { if (is_object($content)) { dump($content); } else { dump($s...
Point 111
3
<div class="report-widget"> <h3 style="margin-bottom:10px;"> <?= e(__($this->property('title'))) ?> </h3> <button type="submit" data-request-flash ...
Vladimir 
2
Точно проблема в твиге?
Vladimir 
5
Ребят, а почему вызов add-tag может возвращать не нулевой код даже если операция прошла успешно? Дело в том, что образ корректно помечается, но ветка заходит в "then"... gclou...
Philipp Bondarev
2
Ребята привет. Telegraf 3.38 актуален ещё или лучше обновиться?
𝙊𝑙ẽ𝘨 // Rabbit Hole
2
<div class="report-widget"> <h3 style="margin-bottom:10px;"> <?= e(__($this->property('title'))) ?> </h3> <button type="submit" data-control="popup...
Point 111
1
@LeMaX10 а ты же делаешь в своем боте капчу на вход в чат? или так же на первое сообщение?
Sergey
4
Всем привет. Не понимаю, в чём тут шутка юмора. Убирается только разрешение на send_messages. А send_media_messages остаётся. Как сделать, чтобы оба убирались? await b...
Alexander
2
Карта сайта