Игорь Надеин ddf22c47da fix: автоматическое обновление JWT токенов
- ApiClient теперь обрабатывает 401 и 403 ошибки для обновления токена
- Добавлен JWTRefreshMiddleware для проактивного обновления токенов за 5 минут до истечения
- Добавлена настройка JWT_REFRESH_THRESHOLD_MINUTES (по умолчанию 5)
- Исправлена проблема с периодическими 403 ошибками после истечения access token
2025-11-20 18:52:29 +03:00

25 lines
816 B
Python

import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "eusrr_backend.settings")
from django.core.asgi import get_asgi_application
django_asgi_app = get_asgi_application()
from channels.auth import AuthMiddlewareStack
from channels.routing import ProtocolTypeRouter, URLRouter
from communications.routing import websocket_urlpatterns as communications_ws
from notifications.routing import websocket_urlpatterns as notifications_ws
from eusrr_backend.channels_jwt import JWTAuthMiddleware
# Объединить все WebSocket маршруты
all_websocket_urlpatterns = communications_ws + notifications_ws
application = ProtocolTypeRouter({
"http": django_asgi_app,
"websocket": JWTAuthMiddleware(
AuthMiddlewareStack(
URLRouter(all_websocket_urlpatterns)
)
),
})