问题标签 [django-channels]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
django - 使用 Django 通道的静态文件服务问题
我正在尝试使用 Django 中的 websockets 示例,https://github.com/jacobian/channels-example,因为我打算将它用于我的生产应用程序,它也托管在 Heroku 中,并在那里使用 Whitenoise。因此,在克隆了上述示例之后,我使用 Whitenoise 进行了一些调整,但现在通过任何浏览器(chrome 或 FF)首次访问应用程序时,静态文件不会加载,当我再次刷新时它会加载静态文件,并且在第三次加载时,它再次熄灭,依此类推。这是我的设置文件:
这是我对 routing.py 进行更改的另一个文件:
过程文件是:
我现在还没有在 Heroku 上尝试过,只是在 localhost 上我观察到了这种行为,所以甚至没有将解决方案与原始应用程序集成。我使用 heroku local 在本地运行应用程序。
我究竟做错了什么?Procfile 生产中提到的过程是否已在 Heroku 上准备好?
谢谢
python - 如何在不刷新的情况下显示从服务器推送到网页的更新?
我使用 Django 1.10 作为我们构建的仓储应用程序的后端。
我正在添加另一个新功能,其中一个网页将显示在一个巨大的显示器上。这个网页除了 1 个巨大的数字外什么都不会显示。
我有一个 RFID 设备,一旦检测到 RFID 标签,就会向我的 Django 服务器发送一个 http 请求。
发生这种情况时,我希望 RFID 标签中的数字显示在前面提到的网页上。
我已经简要地阅读了有关 socket.io 的内容,但我想尽可能地保留在 Django 世界中。我也简要了解了 Django Channels。
我的问题是:
- 我应该在这个用例中使用 Django Channels 吗?
- 如果是这样,我该如何使用上面的用例来做到这一点?
python - Django没有对象匹配给定的查询,但它应该
我有以下问题我的数据库不是空的并且有我需要的记录。但是当我查询数据库时,它说没有与给定查询匹配的对象。我使用 django-channels 从 websocket 中查询数据库,我的数据库是 postgreSQL。
我知道还有其他关于此的问题,我调查了它们,但它们都是关于空数据库或错误的 url slug 这不是我的情况,对我没有任何帮助
下面是对应的代码:
我注意到的另一件事是 print(username) 不打印任何内容,它只是跳过了这一行。我在不同的函数中使用了 message.user.username,所以我确信它应该返回用户名
追溯:
python - 是否可以在不使用操作系统调用的情况下在 python 脚本中启动 Daphne
是否可以从 python 脚本运行 daphne 进程甚至只是 Django 通道?
推荐的方法是运行
我想知道我是否可以将它绑定到一个变量并以 Tornado 的方式运行它
python - “MyConsumer”没有属性“clients_connected”`
我正在尝试按照本教程创建消费者
我在标题中遇到错误,但我已经在构造函数中明确定义了它。disconnect
从方法调用错误
python - 如何通过 django 频道发送心跳/ping 1
我们有Django Channels与 Daphne 和 redis 一起运行。在我们运行django-websocket-redis之前,它支持开箱即用的心跳(ping)消息。我们的客户端代码依赖于这个心跳来确认一个活跃的连接,但是在 django 中我们并不关心它是否仍然活跃。
因此,我们不需要跟踪服务器端的所有内容,但我们确实需要发送心跳。
如何使用通道或 daphne 发送心跳 / ping 消息?我找不到关于此的任何文档。
使用 django-websocket-redis 的旧实现只是"--heartbeat--"
每 n 秒发送一个 websocket 消息。文档参考
我读过 Daphne 发送 ping,但我没有看到它们出现在任何地方,我的 websocket 连接保持打开状态。
django - Django Channels 消息生命周期
我有一些(可能是大量的)JSON 数据需要推送到 Django 频道。数据所需的生命周期非常短(2-3 秒就足够了)。我使用 Redis 作为后端。
什么是默认消息生命周期?是否可以指定消息的生命周期?
python - Django channels for asynchronous periodic tasks
I found that most of the docs regarding Django Channels are about WebSockets. But I want to use them in a different way, and I believe it is possible.
How to run the async periodic task using Django channels? For example, I want to check the temperature on some website (through the API) every 15 seconds and I need a notification when its hit > 20.
It also means that this task will live for a long time (maybe even for 3 month), is Django capable of keeping the consumers live for a long time?
Thank you.
python - Django Channels WebSocketConsumers 是无状态的吗
我正在尝试使用 Django 通道创建一个对象,该对象对于连接到套接字的每个人都保持持久性/
当我尝试创建一个在多次receive()
运行之间保持持久性的对象时,它会引发NoneType
异常
django - Django 频道 + Elastic Beanstalk
我已经设置了一个应用程序负载均衡器,它将/ws/
请求重定向到端口 5000,在那里我让 Daphne 和 4 个工作人员一起运行(通过 Supervisord 重新加载)。但是,在 Chrome 控制台中,我得到了错误
WebSocket connection to 'wss://api.example.com/ws/' failed: WebSocket is closed before the connection is established.
当尝试通过简单的 JavaScript 代码连接到我的 WebSocket 时(请参阅Multichat以了解非常接近的内容)。有任何想法吗?
路由.py
设置.py
Supervisord.conf
达芙妮.out.log
工人.out.log
失败前运行的 JavaScript 代码
显然,daphne/worker 日志中没有相关输出,这意味着连接可能一开始就没有正确路由。