【问题标题】:Turn a pyqt application into a client-server application将 pyqt 应用程序转变为客户端-服务器应用程序
【发布时间】:2011-07-08 13:52:39
【问题描述】:

我正在使用 PyQt 开发一个应用程序。 我一开始并没有计划,但我需要将此应用程序转变为客户端-服务器应用程序:集中代码并可能有许多客户端连接到它。

问题是,我的网络编程很糟糕。 您知道实现这一目标的步骤是什么吗?或者您知道任何可以提供帮助的教程吗?

我不知道这对这件事是否重要,但我的程序访问了一个 mysql 数据库。

任何帮助将不胜感激!

【问题讨论】:

    标签: python network-programming pyqt client-server


    【解决方案1】:

    我建议使用 Twisted。 它可以很容易地集成到 PyQt4 中,是一个全面的网络编程库。

    扭曲的文档:http://twistedmatrix.com/trac/wiki/Documentation

    可以与 PyQt4 的事件循环集成的 Reactor:http://twistedmatrix.com/trac/attachment/ticket/1770/qt4reactor.2.py

    【讨论】:

    • 感谢您的回答。但是我刚刚在常见问题解答中看到了一些可能是问题的内容:Twisted requires a 32-bit version of Python for Windows. 我在 64 位上运行。没有解决方法吗?
    • @Johanna 嗯...那么也许你可以试试 PyQt4 的网络库。它有一个干净的 API,可以在这里找到一个示例:link 请注意服务器如何接受来自客户端的连接并保存套接字以供以后操作。
    • 感谢您的链接。我也在考虑使用这个 API。不过,我还有一个问题:是否有一种方法可以确定哪种类型的客户端(重型或瘦/可安装应用程序或基于 Web 浏览器)更好/更易于实施?
    • @Johanna 这取决于您想对客户做什么。基于 Web 浏览器的客户端有一定的局限性,但很容易实现,因为不同的浏览器提供统一的界面 (HTML/JavaScript),因此您可以专注于设计您的应用程序。如果您需要访问文件系统或浏览器内 JavaScript 不允许您做的其他事情,那么可安装的应用程序就是您的最佳选择。我建议您首先尝试在纯 Python 中构建一个原型服务器/客户端对。
    • 是的,我需要访问文件系统,但我还不知道从服务器访问文件系统是否足够。所以感谢您的回答,我将尝试实现一个基本的客户端-服务器应用程序,并返回论坛询问更具体的问题:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多