Table of Contents |
---|
Файловая структура
Ядро
Code Block |
---|
lib/Abills/Api |
...
Основа
Code Block |
---|
# Суброутеры ядра API
Abills/Api/Paths/[submodule].pm
# Валидации
Abills/Api/Validations/[submodule].pm
# Совмещаемые реализации
Abills/Api/Core/[submodule].pm |
Тесты
Code Block |
---|
t/Api # тест суб/модуля t/Api/[sub/module]/Api.t # схемы t/Api/*/schemas[sub/module]/schemas/(admin|user)/[method_path] request.json - схема реквеста schema.json - схема ответа |
OpenAPI
Code Block |
---|
# Бандл OpenAPI misc/api/bundle_(admin|user).yaml # Основа для бандла misc/api/(admin|user).yaml # Пути для субмодуля misc/api/(admin|user)/[sub/module]/paths.yaml # Схема для одного пути misc/api/(admin/*|user)/[sub/module]/paths/[path].yaml # Ответы для одного варианта пути misc/api/(admin|user/*)/[sub/module]/paths/[method_path].yaml # Сборщик бандла misc/api/generate_docs.pl |
Модули
...
Основа
Code Block |
---|
# Основа API модуля Abills/modules/[module name]/Api.pm]/Api.pm # Контроллеры API модуля Abills/modules/[module]/Api/(admin|user)/[controller].pm # Валидации Abills/modules/[module]/Validations.pm # Список ошибок Abills/modules/[module]/Errors.pm # Словарь ошибок Abills/modules/[module]/lng_english.pm |
Тесты Api
Code Block |
---|
# консольный тест Abills/modules/[module name]/t/Api.t # схемы Abills/modules/[module name]/t/schemas/(admin|user) # схемы для пути-метода Abills/modules/[module name]/t/schemas/(admin|user)/[path_method]/ request.json - схема реквеста schema.json - схема ответа |
OpenAPI
Code Block |
---|
# Список путей Abills/modules/[module name]/Api/swagger/(admin|user)/paths.yaml # Описание для одного пути Abills/modules/[module]/Api/swagger/(admin|user)/paths/[path].yaml # Реквест, ответ схемы для одного метода-пути Abills/modules/[module name]/Api/swagger/(admin|user)/paths/[path_method].yaml # Ответы для одного варианта пути misc/api/(admin|user)/[sub/module]/paths/[method_path].yaml |