This commit is contained in:
2025-07-15 19:30:30 +08:00
parent 872ec5f7af
commit 7b3903c204
2 changed files with 15 additions and 3 deletions

View File

@@ -9,9 +9,16 @@ https://docs.djangoproject.com/en/5.1/howto/deployment/asgi/
import os import os
from channels.routing import ProtocolTypeRouter, URLRouter
from channels.auth import AuthMiddlewareStack
from django.core.asgi import get_asgi_application from django.core.asgi import get_asgi_application
from .urls import ws_urlpatterns
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "api.settings") os.environ.setdefault("DJANGO_SETTINGS_MODULE", "api.settings")
application =get_asgi_application() application = ProtocolTypeRouter(
{
"http": get_asgi_application(),
"websocket": AuthMiddlewareStack(URLRouter(ws_urlpatterns)),
}
)

View File

@@ -20,6 +20,7 @@ from django.urls import path
from django.conf import settings from django.conf import settings
from django.conf.urls.static import static from django.conf.urls.static import static
from ninja import NinjaAPI from ninja import NinjaAPI
from .ws import Consumer
api = NinjaAPI() api = NinjaAPI()
@@ -35,3 +36,7 @@ apis = [
] ]
urlpatterns = apis + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) urlpatterns = apis + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
ws_urlpatterns = [
path("ws/", Consumer.as_asgi()),
]