18 lines
872 B
Markdown
18 lines
872 B
Markdown
# Ответ Соннета — архитектура upload+process (2026-07-13)
|
|
|
|
## Рекомендация: Вариант А + блокирующий /process
|
|
|
|
```
|
|
POST /api/upload → {session_id} (фронт шлёт по одному, N раз)
|
|
POST /api/process/{sid} → {status:"done"} (блокирует до конца обработки)
|
|
GET /api/download/{sid} → ZIP
|
|
```
|
|
|
|
Без polling — `/process` просто блокирует XHR до готовности. Waitress держит.
|
|
|
|
## Детали
|
|
- Mapping.csv — на лету, аккумулируется после каждого файла
|
|
- Сессии — dict в памяти, TTL 30 минут через threading.Timer
|
|
- Фронт: цикл upload → process → download. Три простых XHR.
|
|
- Никакого JS-кода обработки данных.
|