- Django
- django-socketio
django-admin startproject myproject
cd myproject
pip install django-socketio
python
INSTALLED_APPS = [
...
'socketio',
]
python
MIDDLEWARE = [
...
'socketio.middleware.SocketIOMiddleware',
]
python
# django-socketio settings
SOCKETIO_HOST = 'localhost'
SOCKETIO_PORT = 8000
python
from django.shortcuts import render
from socketio.namespace import BaseNamespace
class MyNamespace(BaseNamespace):
def initialize(self):
pass
def on_connect(self):
pass
def on_disconnect(self):
pass
def on_message(self, message):
pass
python
from django.conf.urls import url
from myproject.views import MyNamespace
urlpatterns = [
...
url(r'^socket.io', MyNamespace.as_view(), name='socketio'),
]
python manage.py runserver
html
<script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/2.3.0/socket.io.js"></script>
script
socket.on('connect', function() {
console.log('Connected to server');
});
socket.on('message', function(data) {
console.log('Received message:', data);
});
socket.emit('message', {message: 'Hello, Django!'});