Я пытаюсь использовать каналы Django для установки соединения с браузером. WebSocket не удается соединиться с сервером:Websocket с использованием Django-каналов
[2017/01/23 23:51:50] HTTP GET/200 [0.03, 127.0.0.1:60445]
[2017/01/23 23:51:51] WebSocket HANDSHAKING /chat/ [127.0.0.1:60451]
[2017/01/23 23:51:56] WebSocket DISCONNECT /chat/ [127.0.0.1:60451]
Javascript используется для WebSocket:
socket = new WebSocket("ws://" + window.location.host + "/chat/");
socket.onmessage = function (e) {
alert(e.data);
};
socket.onopen = function() {
socket.send("hello world");
};
// Call onopen directly if socket is already open
if (socket.readyState == WebSocket.OPEN) socket.onopen();
settings.py
CHANNEL_LAYERS = {
"default": {
"BACKEND": "asgiref.inmemory.ChannelLayer",
"ROUTING": "django_chat_server.routing.channel_routing",
}
}
routing.py
channel_routing = {
# Wire up websocket channels to our consumers:
'websocket.connect': ws_add,
'websocket.receive': ws_message,
'websocket.disconnect': ws_disconnect,
}
При загрузке страница, ws_add
запускается, но соединение в конечном итоге отключается. Любые выводы о том, как я могу отладить это, или что может быть проблемой.
Я запускаю сервер, используя команду python manage.py runserver
.
Редактировать: С пониженным до twisted
версии 16.2.0. Безрезультатно.