Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Swagger для http-сервисов в 1С и генерация документации API сервисов #23

Open
zeegin opened this issue Mar 20, 2021 · 10 comments
Assignees
Labels
EDT plugin wanted Нужен такой плагин для 1C:EDT

Comments

@zeegin
Copy link

zeegin commented Mar 20, 2021

  1. Подготовка OpenApi json по исходникам конфигурации
  2. Кодогенерация http сервиса по имеющейся OpenApi спецификации
  3. Быстрое разворачивание swagger UI.
@marmyshev
Copy link
Owner

Прикольная идея))

@marmyshev
Copy link
Owner

Быстрое разворачивание swagger UI.

А зачем это делать из инструмента в EDT? типа "посмотреть локально что получилось"?

или это про публикацию сгенерированного сайта документации где-то в домене?

@zeegin
Copy link
Author

zeegin commented Mar 23, 2021

Ну это как консоль отладки, чтобы быстро можно было приступить к тестированию.

Вовне тоже можно сгенерировать ну или просто OpenApi json отдавать.

@marmyshev marmyshev changed the title Swagger Swagger для http-сервисов в 1С и генерация документации API сервисов Mar 23, 2021
@marmyshev
Copy link
Owner

@zeegin ты сделаешь такой плагин?)) я хочу его!

@zeegin
Copy link
Author

zeegin commented Mar 23, 2021

@zeegin ты сделаешь такой плагин?)) я хочу его!

Подожду пока, может кто еще захочет сделать ;)

@zeegin
Copy link
Author

zeegin commented Mar 24, 2021

Что нашел из имеющегося:

  1. Расширения для конфигурации которые передают свагер спецификацию, откуда берут еще не ковырял https://github.com/zerobig/swagger-1c
  2. Консольная утилита на оскрипте которая собирает спецификацию свагера по исходникам, как я понял по метаданным и доккомментам https://github.com/botokash/swagger

@malikov-pro
Copy link

malikov-pro commented Apr 12, 2021

Перехожу с RAML на OpenAPI на уровне прототипирования.
В применении к 1С вижу проблему с описанием разделов кроме верхнего уровня path.
Список путей относительно просто собирается из списка HTTP сервисов, от туда же можно получить список параметров "in: path".
Дальше сложнее описывается либо как аннотация к обрабатывающей функции (operationId: "") и собирается через плагин, либо через функции хелперы.
Parameters "in: query", формат данных, схема данных, коды ответа ....

У меня была попытка сделать HTTP сервис полностью кодом, есть наработки по использованию схемы OpenAPI для роутинга.

Если дальше разбирать вопрос, то нужно для каждого узла описания продумывать как это будет обрабатываться в 1С, после писать пример реализации и делать конвертеры в обе стороны doc<->code.

@akpaevj
Copy link

akpaevj commented Dec 11, 2023

Взял в работу

@marmyshev marmyshev added the EDT plugin wanted Нужен такой плагин для 1C:EDT label Dec 12, 2023
@marmyshev
Copy link
Owner

https://github.com/akpaevj/OpenAPI.1C - но пока нет p2 репы для установки.

@akpaevj
Copy link

akpaevj commented Feb 5, 2024

https://github.com/akpaevj/OpenAPI.1C - но пока нет p2 репы для установки.

Плагин проходил внутреннее тестирование. Скоро обновлю репозиторий, создам репу

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
EDT plugin wanted Нужен такой плагин для 1C:EDT
Projects
None yet
Development

No branches or pull requests

4 participants