我是新来的django-websocket-redis
和正常我面临一些问题。
我已经建立了从客户端到服务器的通信,反之亦然using Websockets for Redis。
我想检测客户机何时从服务器reconnected
或disconnected
(即连接何时关闭和/或再次打开),这样我就实现了一种机制,客户机负责在重新连接时询问“我错过了什么”,然后查询他们错过的数据。
目前我的客户端代码是这样的(fiddle here)。
我可以检测第一次建立连接的时间,但不能检测WebSocket连接何时断开并重新连接。
我能怎么做吗?
最佳答案
问题在于您设置的函数名不应该是on_connecting()
,而应该只是函数名on_connecting
。
下面是代码,请用下面的代码替换您的代码并检查是否有效。
var ws4redis = WS4Redis({
uri: '{{ WEBSOCKET_URI }}foobar?subscribe-broadcast&publish-broadcast&echo',
receive_message: receiveMessage,
connecting: on_connecting,
connected: on_connected,
error: on_error,
disconnected: on_disconnected,
close: on_close,
open: on_open,
});
当您编写
on_connecting()
时,函数在初始化ws4redis时被调用,这就是为什么您看到所有事件的控制台日志关于django - 检测客户端的redis websocket是否发生了重新连接,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37208097/