swagger-1c
swagger-1c copied to clipboard
Документация HTTP сервисов в 1С при помощи swagger
Готовить файл описания swagger.json не динамически из описания заданного кодом, а использовать статический файл подготовленный через какой-нибудь CLI. И описания тогда парсить из комментариев к функциям HTTP сервисов. Кажется интересная...
- Добавлен модуль Swag_НастройкиSwaggerПереопределяемый. Настройки для базовых адресов HTTP-серверов, которые можно настроить в Swag_НастройкиSwaggerПереопределяемый.БазовыеАдресаHttpСерверов1С(). Удобно формировать Swagger сразу со списком реальных адресов для тестирования и продакта. - Добавлен модуль Swag_ОбщиеОписанияПереопределяемый....
Пример необходимый для описания { "page":1, "limit":100, "proform_uid":["720d9ccd-89f6-11ef-a400-005056936726", "72d869c2-89f4-11ef-a400-005056936726"], "number_invoice":["GOOXI AL_20240927_001","NIP20241011277"] } В данном случае proform_uid и number_invoice это массив строк. 
Выделенный вариант ответа с типом string не отрабатывает, хотя это допускается вместо указания схемы.  Пример 
См. читабельный вариант оформления  Дополнительно шаблоны быстрого доступа добавить к примерам: 1. Добавить свойство объекта (схема) .Свойство("") .Описание("КраткоеОписание. В 1С: НазваниеОбъекта.ИмяРеквизита") .ТипЗначения("") .Описание("") .ТипЗначения("
Просьба вернуться к https://github.com/zerobig/swagger-1c/issues/17 по части exclusiveMinimum Все таки правильно число в exclusiveMinimum для последней версии стандарта 3.1 https://www.openapis.org/blog/2021/02/16/migrating-from-openapi-3-0-to-3-1-0 
Не допускать формирования null, т.к. у объекта может быть не указана схема. Если схема не указана, то просто не выводить $ref. Сейчас это будет ошибкой. 
Код ниже ```bsl Функция ПолучитьОписаниеHTTPСервиса() Экспорт МассивОписанийМетодов = Swag_Описание .Метод("ТестовыйGET") .ОписаниеМетода("Получение данных из 1С") .ПараметрURL("Версия") .ЗначениеПеречисления("1.0") .ЗначениеПеречисления("2.0") .Ответ(200) .ОписаниеОтвета("Success") .Сформировать() ; Возврат МассивОписанийМетодов; КонецФункции Функция ПолучитьОбъектыHTTPСервиса() Экспорт Объекты = Новый...
Нет возможности описать json-rpc. Я понимаю, что swagger изначально создавался для REST, но технически ничего не мешает описать несколько методов с одинаковой точкой вызова API, но различными схемами входных и...
https://github.com/Authress-Engineering/openapi-explorer