如何获取高速公路湿协议中的客户端IP地址?

高朗

我正在使用Autobahn Wamp在Python中进行套接字连接。我正在使用PubSub机制建立连接。连接成功建立。

但是我找不到一种方法来维护与服务器连接的客户端列表。

请问有人可以提出一种方法,帮助我维护所连接客户端的IP地址列表,以及如何使用各自的地址向特定客户端发送回复的方法吗?

请尽早回复。

提前致谢

格雷格

这是一个两部分的问题。第一部分是询问如何识别连接的Web套接字的IP地址。第二部分是询问如何将消息定向到特定会话。我将从第二部分开始。在上面的注释中,有一个工厂变量。可以在如下范围内的任何地方使用:

factory.dispatch("http://domain.com/topic", "payload", [ excluded sessions ], [ included sessions])

会话ID看起来像这个TB15LhO8oS0MLsj6,并且可用于协议中的方法,例如self.session_id变量中的onSessionOpen,onClose。我做这样的事情:

ses_var = {} 

将其放在代码的顶部,即全局变量。然后,在onSessionOpen()中:

def onSessionOpen(self):
    global ses_var

    ses_var[self.session_id] = self
    print "connection from ", self.peer.host, self.peer.port

此代码为您提供了会话的句柄。您将需要管理此变量,并在onClose()方法中从该变量中删除会话。

因此,如果您已经捕获了ses_var变量中的所有打开的会话,则可以再次使用分派将消息发布到其中的任何(和所有)消息:

    factory.dispatch("http://domain.com/topic", "payload", [],
      factory.sessionIdsToProtos(ses_var.keys()))

请注意,session_id不是预期的参数,您必须将id转换为实际的会话对象。

factory.dispatch中的两个数组定义不向谁发送消息以及向谁发送消息。如果将None作为第二个数组传递,则将向所有客户端发送一条消息,因此该示例的分派可以重写为:

    factory.dispatch("http://domain.com/topic", "payload", [], None)

例如,如果要将其发送到第一个会话,则可以执行以下操作:

    factory.dispatch("http://domain.com/topic", "payload", [],
         factory.sessionIdsToProtos([ses_var[0].session_id]))

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

高速公路PHP客户端

来自分类Dev

如何在Roda中获取客户端的IP地址?

来自分类Dev

高速公路异常WebSockets协议违规

来自分类Dev

如何使用php获取客户端公共IP地址?

来自分类Dev

如何使用aiohttp获取客户端的IP地址

来自分类Dev

如何使用php获取客户端公共IP地址?

来自分类Dev

如果使用HTTPS,如何获取客户端的IP地址?

来自分类Dev

如何获取 OpenVPN 客户端的 IP 地址

来自分类Dev

如何获取客户端的IP地址?(Spring WebFlux WebSocket)

来自分类Dev

在websocket库中获取客户端IP地址

来自分类Dev

使用 wsDualHttpBinding 在 WCF 中获取客户端 IP 地址

来自分类Dev

高速公路扭曲的Websocket服务器不会向客户端发送消息,除非它从客户端接收到消息

来自分类Dev

获取客户端机器的IP地址

来自分类Dev

获取HTTP客户端的IP地址

来自分类Dev

获取客户端的IP地址

来自分类Dev

获取客户端静态IP地址

来自分类Dev

获取本地客户端IP地址

来自分类Dev

如何在MVC 4控制器中获取客户端IP地址?

来自分类Dev

如何在HttpHandler(Julia语言)中获取客户端IP地址?

来自分类Dev

如何获取ring-clojure中的客户端IP地址?

来自分类Dev

如何在单向ASMX Web服务中获取客户端IP地址

来自分类Dev

如何在Java HttpServletRequest中获取客户端IP地址

来自分类Dev

如何在ASP.NET MVC中获取客户端IP地址?

来自分类Dev

如何在Azure Functions C#中获取客户端IP地址?

来自分类Dev

如何在Aqueduct Dart服务器中获取客户端请求的IP地址

来自分类Dev

如何在MVC 4控制器中获取客户端IP地址?

来自分类Dev

如何获取Autobahn Wamp Protocol中的客户端IP地址?

来自分类Dev

我如何在js中获取客户端IP地址

来自分类Dev

如何在ASP.NET MVC中获取客户端IP地址?

Related 相关文章

  1. 1

    高速公路PHP客户端

  2. 2

    如何在Roda中获取客户端的IP地址?

  3. 3

    高速公路异常WebSockets协议违规

  4. 4

    如何使用php获取客户端公共IP地址?

  5. 5

    如何使用aiohttp获取客户端的IP地址

  6. 6

    如何使用php获取客户端公共IP地址?

  7. 7

    如果使用HTTPS,如何获取客户端的IP地址?

  8. 8

    如何获取 OpenVPN 客户端的 IP 地址

  9. 9

    如何获取客户端的IP地址?(Spring WebFlux WebSocket)

  10. 10

    在websocket库中获取客户端IP地址

  11. 11

    使用 wsDualHttpBinding 在 WCF 中获取客户端 IP 地址

  12. 12

    高速公路扭曲的Websocket服务器不会向客户端发送消息,除非它从客户端接收到消息

  13. 13

    获取客户端机器的IP地址

  14. 14

    获取HTTP客户端的IP地址

  15. 15

    获取客户端的IP地址

  16. 16

    获取客户端静态IP地址

  17. 17

    获取本地客户端IP地址

  18. 18

    如何在MVC 4控制器中获取客户端IP地址?

  19. 19

    如何在HttpHandler(Julia语言)中获取客户端IP地址?

  20. 20

    如何获取ring-clojure中的客户端IP地址?

  21. 21

    如何在单向ASMX Web服务中获取客户端IP地址

  22. 22

    如何在Java HttpServletRequest中获取客户端IP地址

  23. 23

    如何在ASP.NET MVC中获取客户端IP地址?

  24. 24

    如何在Azure Functions C#中获取客户端IP地址?

  25. 25

    如何在Aqueduct Dart服务器中获取客户端请求的IP地址

  26. 26

    如何在MVC 4控制器中获取客户端IP地址?

  27. 27

    如何获取Autobahn Wamp Protocol中的客户端IP地址?

  28. 28

    我如何在js中获取客户端IP地址

  29. 29

    如何在ASP.NET MVC中获取客户端IP地址?

热门标签

归档