QWebSockets -


LGPL
跨平台
C/C++

软件简介

QWebSockets 是一个纯 Qt 实现的 WebSockets 通讯库,包括客户端和服务器端。QWebSockets 是作为 Qt 源码模块
(.pri 文件) 提供的,可轻松嵌入到已有的 Qt 项目,无需依赖其他第三方库。可实现文本和二进制的套接字、基于帧和消息的信号机制,支持代理和严格的
Unicode 检查。

客户端示例代码:

#include "echoclient.h"
#include <QDebug>

//! [constructor]
EchoClient::EchoClient(const QUrl &url, QObject *parent) :
    QObject(parent),
    m_webSocket()
{
    connect(&m_webSocket, SIGNAL(connected()), this, SLOT(onConnected()));
    m_webSocket.open(QUrl(url));
}
//! [constructor]

//! [onConnected]
void EchoClient::onConnected()
{
    qDebug() << "Websocket connected";
    connect(&m_webSocket, SIGNAL(textMessageReceived(QString)), this, SLOT(onTextMessageReceived(QString)));
    m_webSocket.send("Hello, world!");
}
//! [onConnected]

//! [onTextMessageReceived]
void EchoClient::onTextMessageReceived(QString message)
{
    qDebug() << "Message received:" << message;
}
//! [onTextMessageReceived]