2021-03-01
2526
#django
Gaurav Singhal
35014
Mar 1, 2021 â‹… 9 min read

Django Channels and WebSockets

Gaurav Singhal Gaurav is a data scientist with a strong background in computer science and mathematics. As a developer, he works with Python, Java, Django, HTML, Struts, Hibernate, Vaadin, web scraping, Angular, and React.

Recent posts:

How To Build Cross-Platform Mobile Applications Using Lynx.js

How to build cross-platform mobile applications using Lynx.js

Use Lynx.js to build cross-platform web and mobile apps, addressing layout, navigation, and performance challenges for consistent UX.

Andrew Baisden
Apr 15, 2025 â‹… 16 min read
PDF report workflow

Struggling with your PDF report workflow? Try this

Streamline your PDF report workflow using React and .NET. Walk through a real-world example and discover cloud-based alternatives.

Andrew Evans
Apr 14, 2025 â‹… 8 min read
a guide to the MUI Grid system

A guide to the MUI grid system

Explore the MUI Grid system in depth, including updates from MUI v5, and learn how to build responsive grid layouts.

Gaurav Singhal
Apr 11, 2025 â‹… 8 min read
Building Progressive Web Apps (PWAs) Using Rust

Building progressive web apps using Rust

Build a progressive web app using Rust, WebAssembly, SurrealDB, and Nostr with local encryption and fast storage.

Mario Zupan
Apr 11, 2025 â‹… 18 min read
View all posts

6 Replies to "Django Channels and WebSockets"

  1. Great tutorial!

    Everything works right out of the box except for the following minor details

    – move extends directive to top of file in game/templates/main.html
    – remove extraneous backslashes from game/consumers.py
    self.room_name = self.scope\[‘url_route’\][‘kwargs’][‘room_code’]

    1. none of this works for me…
      GEThttp://localhost:8081/favicon.ico
      [HTTP/1.1 404 Not Found 0ms]

      GETws://localhost:8081/ws/play/xxx/
      [HTTP/1.1 404 Not Found 7ms]

      Firefox can’t establish a connection to the server at ws://localhost:8081/ws/play/xxx/. game.js:5:17
      Socket is closed. Reconnect will be attempted in 1 second. game.js:132:17

  2. Great tutorial, in addition to Silkentrance updates, for django 4 I had to make the following changes:

    – game.js – change event.path[0] to event.composedPath()[0]
    – routing.py – change django.conf.urls import url to from django.urls import re_path
    – routing.py – change url to re_path in websocket_urlpatterns

    Thank you for putting this together!

Leave a Reply