我正在做一个网络课程的家庭作业项目,我们必须用 C/C++ 或 Python 构建一个简单的基于 Web 的聊天服务器。我选择 Python 是因为我认为它是一种更容易实现项目的语言。我们可以使用在网络上找到的任何材料,因为它很可能不具备项目所需的所有功能。事实上,教授实际上鼓励我们使用网络上的材料,包括教程。他不是在测试我们编码的能力,而是测试我们实现网络代码的能力,以及我们是否完全理解所涉及的流程。
该项目必须处理多个客户端,并且必须能够支持多个浏览器,chrome、firefox 等。用户需要能够在浏览器中输入 IP 地址和端口进行连接。我只是找不到任何可以使用的材料。我在 C 语言中找到了一些,但在 Python 中却一无所获。
有谁知道那里有完整的教程吗?有很多基于客户端/服务器命令的聊天,但没有基于浏览器的聊天。
你可以看看使用TornadIO。它是一个Python实现Socket.io, for Tornado,Tornado 是一个事件驱动的 python Web 服务器。
https://github.com/MrJoes/tornadio2
http://www.tornadoweb.org/
Socket.io是一种跨浏览器解决方案,用于从 Web 客户端到服务器的套接字/类套接字连接。这几乎将为您提供创建聊天服务器所需的所有工具,因为它支持发布-订阅订阅和消息。使用 socket.io 来实现您的目的的好处是,它会尝试多种传输以确保新旧浏览器都可以通信:Websocket、Flashsocket、xhr 轮询、jsonp、htmlfile。它们都以对客户来说看起来相同的方式进行尝试和使用。
Tornadio2 是与较新的 Socket.io 0.7+ 兼容的较新版本。这个版本添加了很多破坏与0.6兼容的功能。但是,原始 TornadIO 包含一个聊天室示例,您可以查看该示例并将其轻松翻译为新版本以帮助您入门:
https://github.com/MrJoes/tornadio/tree/master/examples/chatroom
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)