[21] WebSocket データフレームには、テキストとバイナリーの2種類があります。 それぞれテキストデータ、またはバイナリーデータを表します。
[4] データフレームは、応用や拡張のデータを伝搬するものです >>2。
[3] opcode
は、テキストフレームが 1
、
バイナリーフレームが 2
です。また継続フレームは 0
です (WebSocketフレームを参照)。 0x3
-0x7
は、予約されています。 >>2
[8] テキストフレームのpayload data は、 UTF-8 符号化されたテキストデータです。 個別のフレームのデータは UTF-8 データの一部分かもしれませんが、 全体としては妥当な UTF-8 バイト列となっていなければなりません。 >>2
[10] バイナリーフレームの payload data は、任意のバイナリーデータです。 解釈は応用に委ねられます。 >>2
[20] message payload (payload of a message) は、1つのメッセージを表すすべてのデータフレームの payload data 部分を連結したものです。 >>18
[7] クライアントもサーバーも、WebSocket接続の確立の後、
Close
フレームを送信するまで、任意の時機にデータフレームを送信できます
>>1。
[12] WebSocketメッセージ送信を参照。
[11] WebSocketメッセージ受信を参照。
[15] 受信した UTF-8 データが妥当でない時は、WebSocket接続失敗としなければなりません >>14。
[16] Chrome も Firefox も接続を閉じます。 Chrome は状態符号
1002
理由 Invalid UTF-8 in text frame
のCloseフレームを送信します。
[13] 継続フレームの前に FIN
が 0 のテキストフレームやバイナリーフレームがなかった場合には、
Chrome でも Firefox でも、
接続が閉じられます。 Chrome は状態符号 1002
、
理由 Unexpected continuation
の Closeフレームを送ります。
[17] FIN
が 0 のフレームの後にテキストフレームやバイナリーフレームが来た場合、
Chrome でも Firefox でも、
接続が閉じられます。 Chrome は状態符号 1002
、
理由 Previous data frame unfinished
の Closeフレームを送ります。