代码之家  ›  专栏  ›  技术社区  ›  user225312

用python编写p2p聊天应用程序

  •  1
  • user225312  · 技术社区  · 14 年前

    是否可以用python编写对等聊天应用程序?

    我是从一个业余项目的角度来考虑这个问题的。两台机器可以直接连接而不涉及服务器吗?我一直想知道这一点,但从来没有真正看到它在任何地方实现,所以我认为在某个地方一定有一个陷阱。

    附言:我打算学习扭曲,所以如果涉及到,这将是一个额外的优势!

    3 回复  |  直到 6 年前
        1
  •  4
  •   nmichaels    14 年前

    对。使用Twisted可以很容易地做到这一点。只需让其中一个对等机充当服务器,另一个充当客户机。事实上,扭曲的教程将为您提供大部分的方法。

    唯一可能遇到的问题是防火墙。大多数人在snat路由器后面运行他们的家用机器,这使得从外部直接连接到它们变得更加困难。不过,您可以通过端口转发绕过它。

        2
  •  3
  •   John Giotta iaforek    14 年前

    是的,每台计算机(只要它们在同一网络上)都可以建立一个带有入站和出站post/get的服务器实例。

        3
  •  0
  •   Rohit    6 年前

    我想我把我的两个部分放在这里太晚了,我不小心在这里碰到了,因为我也在寻找类似的行。我认为您只使用套接字就可以很容易地做到这一点,但是如上所述,其中一台机器必须像服务器一样工作,与另一台机器将连接到的对象连接。

    我不熟悉Twisted,但我只是使用插座实现了这一点。但是的,即使我很好奇,如果有多个客户机连接到一个服务器,您将如何实现peer2peer聊天通信。创建一个聊天室类型的应用程序很容易,但我很难思考如何处理点对点连接。