146 lines
6.2 KiB
Markdown
146 lines
6.2 KiB
Markdown
# Исправление багов
|
||
|
||
## Исправленные проблемы
|
||
|
||
### 1. ✅ Обычные пользователи теперь могут создавать серверы
|
||
|
||
**Что изменилось:**
|
||
- Убрана проверка роли при создании сервера
|
||
- Любой авторизованный пользователь может создать сервер
|
||
- При создании сервера обычным пользователем, ему автоматически выдается доступ к этому серверу
|
||
- Кнопка "+" теперь видна всем пользователям
|
||
|
||
**Файлы:**
|
||
- `backend/main_new.py` - убрана проверка `if user["role"] != "admin"`
|
||
- `frontend/src/App_final.jsx` - кнопка создания доступна всем
|
||
|
||
### 2. ✅ Админ теперь может просматривать файлы, статистику, настройки и консоль
|
||
|
||
**Проблема:**
|
||
Компоненты не передавали токен авторизации в запросы к API.
|
||
|
||
**Что исправлено:**
|
||
- Все компоненты теперь принимают prop `token`
|
||
- Все запросы к API включают заголовок `Authorization: Bearer ${token}`
|
||
|
||
**Исправленные компоненты:**
|
||
- `Console.jsx` - добавлен токен в запросы команд
|
||
- `Stats.jsx` - добавлен токен в запросы статистики
|
||
- `FileManager.jsx` - добавлен токен во все файловые операции
|
||
- `ServerSettings.jsx` - добавлен токен в настройки
|
||
- `CreateServerModal.jsx` - добавлен токен при создании
|
||
|
||
## Что нужно сделать
|
||
|
||
### Если вы еще не переименовали файлы:
|
||
|
||
1. **Удалите старые файлы:**
|
||
```
|
||
backend/main.py (если есть)
|
||
frontend/src/App.jsx (если есть)
|
||
```
|
||
|
||
2. **Переименуйте новые файлы:**
|
||
```
|
||
backend/main_new.py → backend/main.py
|
||
frontend/src/App_final.jsx → frontend/src/App.jsx
|
||
```
|
||
|
||
3. **Перезапустите панель:**
|
||
```bash
|
||
START_PANEL.bat
|
||
```
|
||
|
||
### Если файлы уже переименованы:
|
||
|
||
Просто перезапустите панель - изменения уже применены в `main_new.py` и `App_final.jsx`.
|
||
|
||
## Проверка исправлений
|
||
|
||
### Тест 1: Создание сервера обычным пользователем
|
||
|
||
1. Зарегистрируйте нового пользователя
|
||
2. Войдите под ним
|
||
3. Нажмите кнопку "+" в списке серверов
|
||
4. Создайте сервер
|
||
5. ✅ Сервер должен появиться в списке
|
||
|
||
### Тест 2: Просмотр файлов админом
|
||
|
||
1. Войдите как admin
|
||
2. Выберите любой сервер
|
||
3. Перейдите на вкладку "Файлы"
|
||
4. ✅ Должен отобразиться список файлов
|
||
|
||
### Тест 3: Просмотр статистики
|
||
|
||
1. Выберите сервер
|
||
2. Перейдите на вкладку "Статистика"
|
||
3. ✅ Должна отобразиться статистика (CPU, RAM, Disk)
|
||
|
||
### Тест 4: Консоль
|
||
|
||
1. Запустите сервер
|
||
2. Перейдите на вкладку "Консоль"
|
||
3. ✅ Должны появиться логи сервера
|
||
4. Отправьте команду (например, "list")
|
||
5. ✅ Команда должна выполниться
|
||
|
||
### Тест 5: Настройки
|
||
|
||
1. Перейдите на вкладку "Настройки"
|
||
2. ✅ Должны отобразиться настройки сервера
|
||
3. Измените что-нибудь и сохраните
|
||
4. ✅ Изменения должны сохраниться
|
||
|
||
## Дополнительные улучшения
|
||
|
||
### Автоматический доступ к созданным серверам
|
||
|
||
Теперь когда обычный пользователь создает сервер:
|
||
1. Сервер создается
|
||
2. Пользователю автоматически выдается доступ к этому серверу
|
||
3. Сервер сразу появляется в его списке
|
||
|
||
Админу не нужно вручную выдавать доступ!
|
||
|
||
### Логирование ошибок
|
||
|
||
Все ошибки API теперь выводятся в консоль браузера (F12) для отладки.
|
||
|
||
## Если что-то не работает
|
||
|
||
### Ошибка "Требуется авторизация"
|
||
|
||
**Причина:** Токен не передается в запросах
|
||
|
||
**Решение:**
|
||
1. Убедитесь что используете обновленные файлы
|
||
2. Очистите кэш браузера (Ctrl+Shift+Delete)
|
||
3. Выйдите и войдите заново
|
||
|
||
### Ошибка "Нет доступа к этому серверу"
|
||
|
||
**Причина:** У пользователя нет прав на сервер
|
||
|
||
**Решение:**
|
||
1. Если вы админ - проверьте что сервер существует
|
||
2. Если вы пользователь - попросите админа выдать доступ
|
||
3. Или создайте свой сервер - доступ выдастся автоматически
|
||
|
||
### Пустой список файлов
|
||
|
||
**Причина:** Токен не передается или сервер пустой
|
||
|
||
**Решение:**
|
||
1. Проверьте консоль браузера (F12) на ошибки
|
||
2. Убедитесь что используете обновленный FileManager.jsx
|
||
3. Загрузите файлы через кнопку "Загрузить"
|
||
|
||
---
|
||
|
||
**Готово!** Все баги исправлены. Теперь:
|
||
- ✅ Любой пользователь может создавать серверы
|
||
- ✅ Админ может просматривать все вкладки
|
||
- ✅ Все запросы включают токен авторизации
|