backup: 2026-04-04 19:51 (without dataset csv)
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
# LR3: REST API на Flask
|
||||
|
||||
Реализация находится в папке `LR3`:
|
||||
|
||||
- `LR3/irfm_lr3.py` - Flask REST API для таблицы `calls` из `data/calls.db`
|
||||
- `LR3/cli_client.py` - CLI-клиент для ручного взаимодействия с API
|
||||
|
||||
## Возможности API
|
||||
|
||||
1. Получение списка объектов с пагинацией: `GET /api/calls?page=1&per_page=20`
|
||||
2. Получение одного объекта по ключу (ID = `rowid`): `GET /api/calls/<id>`
|
||||
3. Добавление объекта: `POST /api/calls`
|
||||
4. Редактирование объекта: `PUT /api/calls/<id>`
|
||||
5. Удаление объекта: `DELETE /api/calls/<id>`
|
||||
6. Дополнительный метод (общее число обращений за час): `GET /api/stats/hour/<hour>`
|
||||
|
||||
Формат ответа:
|
||||
|
||||
- JSON (по умолчанию)
|
||||
- WSDL/XML: передайте `?format=wsdl` (или `Accept: application/wsdl+xml`)
|
||||
- Отдельное описание WSDL: `GET /api/wsdl`
|
||||
|
||||
## Запуск
|
||||
|
||||
```bash
|
||||
uv sync
|
||||
uv run python LR3/irfm_lr3.py
|
||||
```
|
||||
|
||||
Сервер поднимется на `http://127.0.0.1:5000`.
|
||||
|
||||
## Запуск CLI
|
||||
|
||||
В отдельном терминале (при запущенном сервере):
|
||||
|
||||
```bash
|
||||
uv run python LR3/cli_client.py
|
||||
```
|
||||
|
||||
CLI позволяет вручную выбрать метод API, указать входные данные и формат ответа.
|
||||
Reference in New Issue
Block a user