保存连接到稍后向他们发送消息的套接字

Posted

技术标签:

【中文标题】保存连接到稍后向他们发送消息的套接字【英文标题】:Saving a socket that connected to later send them a message 【发布时间】:2019-09-02 17:37:03 【问题描述】:

我已经设置了一个 Flask 服务器,其中 javascript 浏览器客户端通过 websockets 连接到它。

我很好奇我是否可以在 python 中的某个地方保存某个套接字,以便我可以专门向它发出消息。

我没有尝试做任何事情,但我找不到任何关于我想做的事情的信息。

没有可提供的代码...

我希望能够做类似的事情:

    all_sockets = []

    @socketio.on('connection')
    def on_connect(socket, json, methods=['GET', 'POST']):
        all_sockets.append(socket)

    def whisper(socket, message)
        socket.emit("data": message)

    whisper(all_sockets[1], "Test")

很像 node.js 的 websockets 版本......

【问题讨论】:

【参考方案1】:

我觉得几乎可以解决这个问题的答案在这里:flask socketio emit to specific user

我以为我可以保存“套接字”,但这是一个有点奇怪的想法。

我需要更多文本,以便我可以回复自己并将其标记为该问题的解决方案,这样其他人就不必回复这个尴尬了。

【讨论】:

以上是关于保存连接到稍后向他们发送消息的套接字的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Web 套接字中从服务器向客户端发送消息

SocketIO 通过 API 路由向客户端发送消息

如何使用 Perl 通过 TCP 和 UDP 连接到远程机器?

用户的套接字与服务器断开连接后如何发送消息

PHP 简单的网络套接字

通过 socket.id 向客户端发送消息