Перейти к содержанию

Реализация Stories и Webcams в Rust

Дата: 2026-03-13 Автор: Trae AI Agent Статус: Выполнено

Описание

Реализованы модули "Истории" (Stories) и "Веб-камеры" (Webcams), которые являются важными контентными разделами приложения.

Реализованные модули

1. Истории (handlers/story.rs, models/story.rs)

  • GET /rust/v1/stories: Получение списка одобренных историй с фильтрацией (поиск, категория, автор). Возвращает данные автора и статистику (лайки, просмотры, комментарии).
  • POST /rust/v1/stories: Создание новой истории (статус pending). Валидация количества изображений.
  • POST /rust/v1/stories/{id}/like: Добавление лайка к истории.
  • GET /rust/v1/stories/{id}/reviews: Получение отзывов к истории.
  • POST /rust/v1/stories/{id}/reviews: Добавление отзыва к истории.

2. Веб-камеры (handlers/webcam.rs, models/webcam.rs)

  • GET /rust/v1/webcams: Получение списка активных веб-камер.
  • Поддерживает фильтрацию по локации.
  • Поддерживает расчет расстояния от пользователя (если переданы latitude и longitude) и фильтрацию по радиусу.
  • Сортировка по расстоянию.
  • GET /rust/v1/webcams/{id}: Детальная информация о веб-камере.

Совместимость

API полностью совместимо с фронтендом, использующим соответствующие пути (с префиксом /rust/v1).

Инструкция по проверке

  1. cargo run
  2. Открыть Swagger UI: http://localhost:9011/swagger-ui/
  3. Протестировать эндпоинты в секциях Stories и Webcams.