404 GET 在 Django 模板中的服务器 socket.io

404 GET in socket.io server in a Django template

本文关键字:服务器 socket io GET Django      更新时间:2023-09-26

我正在尝试在一个项目中使用 Socket.io 和 Django,当我从服务器加载 socket.io 脚本时

<script src="localhost:3000/socket.io/socket.io.js"></script>
<script>
  var socket = io();
</script>

我收到一个错误,因为我的 Django 项目在 localhost:8000 中,所以我不知道为什么当我说 socket.io 服务器在端口 3000 中时,socket.io 脚本会尝试从 Django 发出请求。

在我的浏览器中的js控制台中说

获取 http://localhost:8000/socket.io/EIO=3&transport=polling&t=142197415699051 404(未找到)

这应该寻找 loacalhost:3000 而不是本地主机:8000

我的 Django 日志控制台 说:

[22/Jan/2015 18:50:23] "获取 /socket.io/?EIO=3&transport=polling&t=1421974222989-62 HTTP/1.1" 404 7506

显然是因为没有一个 Django url 来回答这个请求。

如何在 Django 模板中加载 socket.io 服务器???

不能指定服务器端应用程序从客户端脚本 src 属性侦听的端口。

您必须配置 socket.io 在服务器端使用的端口。请参阅此StackOverflow以获取有关如何执行此操作的答案。