You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+45-2Lines changed: 45 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -14,8 +14,9 @@
14
14
* 2.3\.[Swagger UI](#swagger-ui)
15
15
* 3\.[Совместимость](#compatibility)
16
16
* 4\.[Программный интерфейс](#api)
17
-
* 5\.[Ограничения](#limitations)
18
-
* 6\.[Сравнение с httpbin.org](#comparison)
17
+
* 5\.[Кастомные эндпоинты](#custom-endpoints)
18
+
* 6\.[Ограничения](#limitations)
19
+
* 7\.[Сравнение с httpbin.org](#comparison)
19
20
20
21
## Установка <aname="installation"></a>
21
22
@@ -39,6 +40,7 @@ httpbin run
39
40
| --- | --- | --- |
40
41
|`-h`, `--host`| Имя хоста или IP-адрес сервиса |`127.0.0.1`|
41
42
|`-p`, `--port`| TCP-порт сервиса |`3333`|
43
+
|`--routes-handlers`| Путь к файлу или каталогу кастомных контроллеров ||
42
44
43
45
### Тестирование с [asserts](https://github.com/oscript-library/asserts) и [1connector](https://github.com/vbondarevsky/1connector) <aname="testing"></a>
44
46
@@ -132,6 +134,47 @@ IP-адрес или имя хоста.</br>
132
134
|`URL(<АдресРесурса>)`| Формирует полный URL-адрес сервиса с опциональным путем к ресурсу. |
133
135
|`ТаймаутЗапуска()`| Возвращает текущее значение таймаута запуска сервиса. |
134
136
|`УстановитьТаймаутЗапуска(<Таймаут>)`| Устанавливает максимальное время ожидания запуска сервиса. Применяется при синхронном запуске. |
137
+
|`РасположениеКонтроллеров()`| Возвращает текущий путь к папке или файлу с кастомными контроллерами. |
138
+
|`УстановитьРасположениеКонтроллеров(<Расположение>)`| Устанавливает путь к папке или файлу с кастомными контроллерами, определяющими маршруты сервиса. |
Сервис поддерживает подключение пользовательских контроллеров для расширения функциональности и добавления собственных эндпоинтов.
143
+
144
+
### Создание контроллера
145
+
146
+
Контроллер представляет собой класс OneScript с аннотацией `&Контроллер`, определяющей базовый путь маршрута. Более подробно можно прочитать в документации [WINOW](https://github.com/autumn-library/winow).
147
+
148
+
**Пример контроллера**
149
+
150
+
```bsl
151
+
&Контроллер("/order")
152
+
Процедура ПриСозданииОбъекта()
153
+
КонецПроцедуры
154
+
155
+
&ТочкаМаршрута("add")
156
+
Процедура Главная(Ответ) Экспорт
157
+
// Бизнес-логика
158
+
КонецПроцедуры
159
+
```
160
+
161
+
### Подключение контроллеров
162
+
163
+
**Через программный интерфейс**
164
+
165
+
Для подключения кастомных контроллеров используйте метод `УстановитьРасположениеКонтроллеров()`, указав путь к папке или файлу с контроллерами:
0 commit comments