Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
|
swagger_-_napisannja_dokumentaciji [2024/06/27 17:03] tro |
swagger_-_napisannja_dokumentaciji [2024/06/30 10:54] (текущий) tro |
||
|---|---|---|---|
| Строка 4: | Строка 4: | ||
| **Swagger** - це набір інструментів для розробки, | **Swagger** - це набір інструментів для розробки, | ||
| + | ===== Бібліотека redocly/cli ===== | ||
| * Для зручної роботи зі Swagger ми скористаємося бібліотекою @redocly/ | * Для зручної роботи зі Swagger ми скористаємося бібліотекою @redocly/ | ||
| < | < | ||
| Строка 24: | Строка 25: | ||
| </ | </ | ||
| - | Команда preview-docs допоможе нам писати документацію з hot-reload, тобто з гарячим перезавантаженням сторінки при внесенні змін(як в nodemon). Більш детально можете прочитати про це за [[https:// | + | * Команда preview-docs допоможе нам писати документацію з hot-reload, тобто з гарячим перезавантаженням сторінки при внесенні змін(як в nodemon). Більш детально можете прочитати про це за [[https:// |
| + | * Команда build-docs буде формувати один файл із розширенням .json за шляхом docs/ | ||
| + | |||
| + | < | ||
| + | // docs/ | ||
| + | |||
| + | {} | ||
| + | |||
| + | </ | ||
| + | |||
| + | Для того, щоб працювати з redocly CLI, нам також треба створити файл redocly.yaml в корені проєкту. Цей файл містить конфігурацію для роботи з redocly CLI. Він дозволяє налаштовувати параметри генерації документації для API, включаючи налаштування стилів, | ||
| + | |||
| + | < | ||
| + | # redocly.yaml | ||
| + | |||
| + | # See < | ||
| + | apis: | ||
| + | sample@v1: | ||
| + | root: docs/ | ||
| + | extends: | ||
| + | - recommended | ||
| + | rules: | ||
| + | no-unused-components: | ||
| + | theme: | ||
| + | openapi: | ||
| + | htmlTemplate: | ||
| + | theme: | ||
| + | colors: | ||
| + | primary: | ||
| + | main: '# | ||
| + | generateCodeSamples: | ||
| + | languages: # Array of language config objects; indicates in which languages to generate code samples. | ||
| + | - lang: curl | ||
| + | - lang: Node.js | ||
| + | - lang: JavaScript | ||
| + | |||
| + | </ | ||
| + | В цьому файлі ми бачимо, | ||
| + | < | ||
| + | <!-- docs/ | ||
| + | |||
| + | < | ||
| + | < | ||
| + | |||
| + | < | ||
| + | <meta charset=" | ||
| + | < | ||
| + | <!-- needed for adaptive design --> | ||
| + | <meta name=" | ||
| + | <link rel=" | ||
| + | |||
| + | <!-- | ||
| + | ReDoc uses font options from the parent element | ||
| + | So override default browser styles | ||
| + | --> | ||
| + | < | ||
| + | body { | ||
| + | margin: 0; | ||
| + | padding: 0; | ||
| + | } | ||
| + | </ | ||
| + | {{{redocHead}}} | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | {{{redocHTML}}} | ||
| + | </ | ||
| + | |||
| + | </ | ||
| + | </ | ||
| + | < | ||
| + | # docs/ | ||
| + | |||
| + | openapi: 3.1.0 | ||
| + | info: | ||
| + | version: 1.0.0 | ||
| + | title: Students app | ||
| + | license: | ||
| + | name: Apache 2.0 | ||
| + | url: < | ||
| + | description: | ||
| + | This is a documentation of students app | ||
| + | tags: | ||
| + | - name: Students | ||
| + | description: | ||
| + | - name: Auth | ||
| + | description: | ||
| + | servers: | ||
| + | - url: < | ||
| + | - url: < | ||
| + | paths: | ||
| + | components: | ||
| + | securitySchemes: | ||
| + | bearerAuth: | ||
| + | type: http | ||
| + | scheme: bearer | ||
| + | |||
| + | |||
| + | </ | ||
| + | ===== Бібліотека Swagger UI Express для публікації документаціїї swagger на сервері ===== | ||
| + | [[https:// | ||
| + | |||
| + | |||
| + | ===== Розширення для VSCode Redocly OpenAPI: ===== | ||
| + | Також перед початком написання документації ми радимо вам встановити розширення у VSCOde [[https:// | ||
| + | ===== Використання ===== | ||
| + | ==== preview ==== | ||
| + | < | ||
| + | npm run preview-docs | ||
| + | </ | ||
| + | Перегляд попередньої збудованої сторінки буде доступний на **http:// | ||
| + | Взагалі в терміналі треба читати - там пише на який порт і куди сервіс запуститься. | ||