Qt WebChannel スタンドアロンの例

サーバーとブラウザで動作するリモートクライアント間の簡単なチャット。

Standaloneは、QWebChannel C++ API を使用して外部クライアントと通信する方法を示します。これは、C++アプリケーションと、デフォルトのブラウザで実行されているリモートHTMLクライアントとの間の単純なチャットです。

例の実行

からサンプルを実行するには Qt Creatorからサンプルを実行するには、Welcome モードを開き、Examples からサンプルを選択します。詳細については、「例の構築と実行」を参照してください。

リモート・クライアントとの通信

C++アプリケーションは、QWebChannel インスタンスをセットアップし、Core オブジェクトを発行します。リモート・クライアント側では、index.html ファイルが開かれます。どちらも、受信したメッセージのリストが表示されたダイアログと、相手側にメッセー ジを送信するための入力ボックスが表示されます。

ユーザーがメッセージを送信すると、CoreCore::sendText() シグナルを発します。このシグナルは自動的にHTMLクライアントに伝わります。ユーザーがHTML側でメッセージを入力すると、Core::receiveText()

HTMLクライアントとC++サーバー間の通信は、すべてWebSocketを介して行われます。C++側はQWebSocketServer をインスタンス化し、QWebSocket からの接続をQWebChannelAbstractTransport オブジェクトでラップします。これらのオブジェクトは、QWebChannel インスタンスに接続されます。

プロジェクト例 @ code.qt.io

Qt WebChannel JavaScript APIも参照

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.