WebSocket QML Type

QWebSocket への QML インターフェース。詳細...

Import Statement: import QtWebSockets 1.10

プロパティ

信号

方法

詳細説明

WebSocketは、単一のTCP接続を介して全二重通信チャネルを提供するウェブ技術である。WebSocketプロトコルは2011年にRFC 6455としてIETFによって標準化された。

プロパティの説明

active : bool

trueに設定すると、指定されたURLのサーバーに接続が行われます。falseに設定すると、接続は閉じられます。デフォルト値は false です。


errorString : string [read-only]

最後に発生したエラーの説明を含みます。エラーが発生していない場合、この文字列は空です。


negotiatedSubprotocol : string [read-only, since 6.4]

サーバとネゴシエートされた WebSocket サブプロトコル。

このプロパティは Qt 6.4 で導入されました。


requestedSubprotocols : list<string> [since 6.4]

WebSocket ハンドシェイクで送信する WebSocket サブプロトコルのリスト。

このプロパティは Qt 6.4 で導入されました。


status : Status [read-only]

WebSocket のステータス。

ステータスには以下の値があります:

  • WebSocket.Connecting
  • WebSocket.Open
  • WebSocket.Closing
  • WebSocket.Closed
  • WebSocket.Error

url : url

接続先のサーバーURL。urlには、ws://またはwss://の2つのスキームのいずれかを指定する必要があります。提供されない場合は、ws://が使用されます。


シグナルの説明

binaryMessageReceived(QString message)

このシグナルは、バイナリメッセージを受信したときに発行されます。message には受信したバイトが含まれます。

注意: 対応するハンドラはonBinaryMessageReceived です。


[since 6.10] pong(quint64 elapsedTime, ArrayBuffer payload)

elapsedTime はミリ秒単位のラウンドトリップタイムを含み、payload はpingと一緒に送られたオプションのペイロードを含む。

注: 対応するハンドラはonPong です。

このシグナルは Qt 6.10 で導入されました。

ping()も参照してください


statusChanged(Status status)

このシグナルは、WebSocket のステータスが変更されたときに発行されます。引数status は現在のステータスを提供します。

注意: 対応するハンドラはonStatusChanged です。

WebSocket::statusも参照


textMessageReceived(QString message)

message には受信したバイトが格納される。

注: 対応するハンドラはonTextMessageReceived


メソッド・ドキュメント

[since 6.10] void ping()

[since 6.10] void ping(ArrayBuffer payload)

接続がまだ生きていることを示すためにサーバーにpingを打つ。pingメッセージと一緒に追加のpayload

payload のサイズは125バイトより大きくすることはできない。それより大きい場合、payload は125バイトに切り取られる。

注: QWebSocketQWebSocketServer は内部的に ping リクエストを処理します。つまり、自動的に pong レスポンスを相手に送り返します。

この QML メソッドは Qt 6.10 で導入されました。

pong()も参照してください


void sendBinaryMessage(ArrayBuffer message)

パラメータmessage をサーバに送ります。


void sendTextMessage(string message)

message をサーバに送ります。


© 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.