2023-06-26 18:58:20 +08:00
|
|
|
import os
|
|
|
|
|
2023-07-01 15:47:28 +08:00
|
|
|
from channels.routing import ProtocolTypeRouter, URLRouter
|
2023-09-12 21:36:28 +08:00
|
|
|
from channels.security.websocket import AllowedHostsOriginValidator
|
2023-07-01 15:47:28 +08:00
|
|
|
from channels.auth import AuthMiddlewareStack
|
2023-06-26 18:58:20 +08:00
|
|
|
from django.core.asgi import get_asgi_application
|
2023-07-01 15:47:28 +08:00
|
|
|
import api.routing
|
|
|
|
from django.urls import re_path
|
2023-09-17 20:09:10 +08:00
|
|
|
from config.auth_middleware import JwtAuthMiddlewareStack
|
2023-06-26 18:58:20 +08:00
|
|
|
|
|
|
|
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'config.settings')
|
2023-07-01 11:40:49 +08:00
|
|
|
# Initialize Django ASGI application early to ensure the AppRegistry
|
|
|
|
# is populated before importing code that may import ORM models.
|
|
|
|
django_asgi_app = get_asgi_application()
|
|
|
|
|
|
|
|
application = ProtocolTypeRouter({
|
|
|
|
"http": django_asgi_app,
|
2023-09-17 20:09:10 +08:00
|
|
|
'websocket':
|
|
|
|
JwtAuthMiddlewareStack(
|
|
|
|
URLRouter(api.routing.websocket_urlpatterns)
|
2023-09-12 21:36:28 +08:00
|
|
|
),
|
2023-09-17 20:09:10 +08:00
|
|
|
|
2023-07-01 11:40:49 +08:00
|
|
|
})
|