Javascript 建议将Qt应用程序转换为Web应用程序

Javascript 建议将Qt应用程序转换为Web应用程序,javascript,html,qt,wt,Javascript,Html,Qt,Wt,我目前有一个基于Qt的GUI应用程序,它只提供一个图形仪表板(仪表板、图形等),显示另一个应用程序通过TCP连接提供的实时数据。出于架构和安全原因,我被告知不再允许TCP连接,HTTPS websocket将是我唯一的管道。有人建议我使用HTML5和Javascript将我的应用程序转换为webapp。然而,我不是一个网页程序员,但可以认为这是一个学习新技术的机会。我想在做决定之前更好地了解一下环境。因此,我认为我的选择是: 将我的应用程序转换为web应用程序,让我了解基于web的应用程序的所有

我目前有一个基于Qt的GUI应用程序,它只提供一个图形仪表板(仪表板、图形等),显示另一个应用程序通过TCP连接提供的实时数据。出于架构和安全原因,我被告知不再允许TCP连接,HTTPS websocket将是我唯一的管道。有人建议我使用HTML5和Javascript将我的应用程序转换为webapp。然而,我不是一个网页程序员,但可以认为这是一个学习新技术的机会。我想在做决定之前更好地了解一下环境。因此,我认为我的选择是:

  • 将我的应用程序转换为web应用程序,让我了解基于web的应用程序的所有优点/缺点。我还有更多的工作要做,因为这是一项新技术,我已经有了Qt/TCP版本可以正常工作。如果这是建议的方法,任何关于开发环境/工具的建议都将不胜感激

  • 将我当前的Qt应用程序转换为客户端HTTPS连接,而不是TCP连接。我不确定这是否可行。据我所知,这可能不可能与QtWebKit。看起来很奇怪


  • 也许还有另一个我没有考虑的选择?

    您也可以使用混合方法,使用WT库。它是基于C++(和QT启发)的。 它有一个很好的工具包并支持WebSocket


    我最近刚参加了一次类似的工作锻炼。我们决定使用GoogleWebToolkit(GWT)框架来开发我们的Web应用程序。它是完全基于java的,这意味着您可以(几乎)用java编写所有内容,GWT编译器会将其转换为Javascript。我们使用GWT EventService插件将数据从服务器推送到客户端


    我希望在我们开始之前就知道这个WT库,这看起来很有趣。

    移植需要大量的工作。在Qt端,至少有两种WebSocket实现:

  • ,基于Qt的websocket服务器实现和websocket客户端的alpha状态实现
  • ,基于Boost的websocket服务器和客户端实现

  • 您还可以看看,这是WebSocket的纯Qt实现,用于客户端和服务器


    更新:该库现在是Qt不可或缺的一部分

    从Qt移植到GWT可能并不比从Qt移植到普通web应用程序简单。Wt基于Boost,而不是Qt。考虑到WT是C++,它将允许在移植时重用非GUI逻辑。但是GUI必须从头开始。而且它没有LGPL许可证。