Сервер Django слушает только сервер сокетов и игнорирует маршруты

Вот мой файл WSGI.py в django, я импортирую папку под названием "webSocket", которая содержит файл views.py, где написан код сервера для сокета

from django.core.wsgi import get_wsgi_application
from webSocket.views import server
import socket
import os

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'b2b_backend.settings')

application = get_wsgi_application()
# make the app run with socketio
application = socket.WSGIApp(application, server)

вот мой файл urls.py в корневой папке django, маршруты работают нормально до добавления сокет-сервера в проект

from django.urls import include, path
urlpatterns = [

    path('users/', include('database_models.b2b_user.urls')),
]

вот мой файл сервера сокетов в папке webSocket файл views.py импортировать сокет import threading

SERVER = "localhost"
PORT = 8000
HEADER = 64
ADDR = (SERVER, PORT)
FORMAT = 'utf-8'
DISCONNECT_MESSAGE = "!DISCONNECT"

server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server.bind(ADDR)


def handle_client(conn, addr):
    print(f"[NEW CONNECTION] {addr} connected.")

    connected = True
    while connected:
        msg_length = conn.recv(HEADER).decode(FORMAT)
        if msg_length:
            msg_length = int(msg_length)
            msg = conn.recv(msg_length).decode(FORMAT)
            print(f"[{addr}] {msg}")
            if(msg == DISCONNECT_MESSAGE):
                connected = False
    conn.send("test".encode(FORMAT))
    conn.close()


def start():
    server.listen()
    while True:
        conn, adrr = server.accept()
        thread = threading.Thread(target=handle_client, args=(conn, adrr))
        thread.start()
        print(f"[ACTIVE CONNECTIONS]", {threading.active_count() - 1})


print(f"[STARTING] server is starting on {SERVER}:{PORT}")
start()

в чем проблема: при запуске сервера django, он начинает слушать только сообщения сокета, и когда я пытаюсь получить доступ к маршруту, он посылает запрос на сервер сокета, а не на маршруты django, что приводит к ошибке

Что я пытаюсь сделать: Мне нужно, чтобы сервер django работал и постоянно слушал сокетные запросы от клиентов, и в то же время нормально обращался к маршрутам, чтобы сайт мог продолжать работать правильно

Вернуться на верх