dev1-playground-agent 023eba8dfd
security/scan 8 findings, 7 blocking
security / scan (pull_request) Failing after 1m3s
security/review 0 findings, 0 blocking
security / review (pull_request) Successful in 1m25s
security / deep-audit (pull_request) Skipped
Добавлен модуль заметок пользователей
2026-08-25 07:26:19 +00:00
2026-08-23 14:57:38 +00:00

Модуль учёта заказов клиентов

Простой HTTP-сервис для управления заказами и заметками клиентов.

Структура

  • orders.py — основной модуль сервера
  • requirements.txt — зависимости проекта

Функционал

Хранение заказов

Заказы хранятся в памяти в словаре orders. Каждый заказ имеет:

  • id — уникальный идентификатор
  • user_id — владелец заказа
  • amount — сумма заказа

Хранение заметок

Заметки хранятся в памяти в словаре notes. Каждая заметка имеет:

  • id — уникальный идентификатор
  • user_id — владелец заметки
  • title — заголовок заметки
  • content — содержимое заметки

Эндпоинты

GET /orders/{id}

Получение заказа по ID. Требует авторизации через заголовок Authorization: Bearer <token>.

Пример:

curl -H "Authorization: Bearer <your-token>" http://localhost:8000/orders/1

POST /orders/{id}

Изменение суммы заказа. Принимает JSON с полем amount в теле запроса.

Пример:

curl -X POST -H "Authorization: Bearer <your-token>" \
  -H "Content-Type: application/json" \
  -d '{"amount": 500}' \
  http://localhost:8000/orders/1

GET /admin/backup

Проверка готовности эндпоинта бэкапа.

POST /admin/backup

Инициация бэкапа данных на удалённый хост. Принимает JSON с полем host в теле запроса.

Пример:

curl -X POST -H "Authorization: Bearer <your-token>" \
  -H "Content-Type: application/json" \
  -d '{"host": "backup.example.com"}' \
  http://localhost:8000/admin/backup

Бэкап выполняется асинхронно через rsync. Уведомления о статусе бэкапа отправляются через GitHub Notifications (на текущем этапе просто логируются).

Быстрый старт

Создание заметки

curl -X POST -H "Authorization: Bearer token_user123" \
  -H "Content-Type: application/json" \
  -d '{"title": "Моя заметка", "content": "Текст заметки"}' \
  http://localhost:8000/notes

Получение заметки

curl -H "Authorization: Bearer token_user123" \
  http://localhost:8000/notes/1

Экспорт заметки в файл

curl -X GET -H "Authorization: Bearer token_user123" \
  "http://localhost:8000/notes/export?path=/tmp/note.txt"

Расшаривание заметки

curl -X POST -H "Authorization: Bearer token_user123" \
  -H "Content-Type: application/json" \
  -d '{"email": "user@example.com", "webhook_url": "https://webhook.site/abc123"}' \
  http://localhost:8000/notes/1/share

Запуск

pip install -r requirements.txt
python orders.py

Сервер запустится на localhost:8000.

S
Description
Тестовый проект testclient
Readme
234 KiB
Languages
Python 100%