Qt:用WebSocket构建QML和C++之间的桥梁

前言

WebSocket,作为一个全双工的网络通讯协议,正在慢慢的被各大开发框架和语言接受。

之前有说过Qt在5.10新出了WebGL的platform,连接如下:

http://blog.csdn.net/wsj18808050/article/details/78791001

其中在浏览器和程序之间,负担着大量数据传递,就是WebSocket。

今天就来说下QML如何通过WebSocket和C++交互。

关于WebSocket的相关知识,以及相比其它通讯协议优劣点,这里不再累述,有兴趣的同学可以自行搜索下。


信号和槽?还是WebSocket

一般来说,使用QML开发当程序,都是通过信号和槽,与C++交互。

这时候问题就来了,如果需求是要跨进程或者跨设备,那这种传统方法就不可行。

ps:这里不讨论Qt Remote Object

通常我们的做法是在C++写一个接口,把通讯协议,比如说TCP或者消息队列,封装好,然后再注册一个类到QML,再在QML中调用这个注册过去的类以及接口。

这一过程繁琐,涉及的接口多,造成诸多困扰和不便。

另外如果是自己根据一些底层协议搞,比如说根据传输层的TCP造应用层的轮子,那问题更多了,相信造过轮子的人都有感受。

即使是使用HTTP,也会有性能、网络延迟和反向通知&#

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值
>