Win32 API 日本語リファレンス
ホームNetworking.WebSocket › WEB_SOCKET_BUFFER_TYPE

WEB_SOCKET_BUFFER_TYPE

列挙型
基底型i4

メンバー 7

名前10進16進説明
WEB_SOCKET_UTF8_MESSAGE_BUFFER_TYPE-21474836480x80000000バッファーが UTF8 メッセージの最後の部分(場合によっては唯一の部分)を含んでいることを示します。
WEB_SOCKET_UTF8_FRAGMENT_BUFFER_TYPE-21474836470x80000001バッファーが UTF8 メッセージの一部を含んでいることを示します。
WEB_SOCKET_BINARY_MESSAGE_BUFFER_TYPE-21474836460x80000002バッファーがバイナリメッセージの最後の部分(場合によっては唯一の部分)を含んでいることを示します。
WEB_SOCKET_BINARY_FRAGMENT_BUFFER_TYPE-21474836450x80000003バッファーがバイナリメッセージの一部を含んでいることを示します。
WEB_SOCKET_CLOSE_BUFFER_TYPE-21474836440x80000004バッファーがクローズメッセージを含んでいることを示します。
WEB_SOCKET_PING_PONG_BUFFER_TYPE-21474836430x80000005バッファーが ping または pong メッセージを含んでいることを示します。送信時、この値は 'ping' を意味し、受信データの処理時、この値は 'pong' を意味します。
WEB_SOCKET_UNSOLICITED_PONG_BUFFER_TYPE-21474836420x80000006バッファーが要求されていない pong メッセージを含んでいることを示します。

公式ドキュメント

WEB_SOCKET_BUFFER_TYPE 列挙型は、WebSocket フレームヘッダーの構築に使用されるビット値を指定します。

解説(Remarks)

FRAGMENT および MESSAGE のバッファー型は、メッセージがネットワーク上に現れる方法(フレーム化のされ方)と対応しない場合がある点に注意してください。たとえば、断片化されていない 1000 バイトのメッセージを 1 つ受信した場合、WebSocket.dll は複数の FRAGMENT バッファー型を返した後に単一の MESSAGE バッファー型を返すことがあります(サイズの合計は 1000 になります)。

拡張用の WebSocket フレームヘッダー(拡張機能が予約ビットを設定できるようにするもの)は、最上位ビット (MSB) と最下位ビット (LSB) を 0 に設定することで構築できます。残りの下位 9 ビットを使用して、WEB_SOCKET_BUFFER_TYPE 列挙型の値の代わりとなるカスタムフレームヘッダーを構成できます。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

各言語での定義

列挙メンバーの定義。HSP タブは #define global(値は16進)。

typedef enum WEB_SOCKET_BUFFER_TYPE : int {
    WEB_SOCKET_UTF8_MESSAGE_BUFFER_TYPE = -2147483648,
    WEB_SOCKET_UTF8_FRAGMENT_BUFFER_TYPE = -2147483647,
    WEB_SOCKET_BINARY_MESSAGE_BUFFER_TYPE = -2147483646,
    WEB_SOCKET_BINARY_FRAGMENT_BUFFER_TYPE = -2147483645,
    WEB_SOCKET_CLOSE_BUFFER_TYPE = -2147483644,
    WEB_SOCKET_PING_PONG_BUFFER_TYPE = -2147483643,
    WEB_SOCKET_UNSOLICITED_PONG_BUFFER_TYPE = -2147483642
} WEB_SOCKET_BUFFER_TYPE;
public enum WEB_SOCKET_BUFFER_TYPE : int
{
    WEB_SOCKET_UTF8_MESSAGE_BUFFER_TYPE = -2147483648,
    WEB_SOCKET_UTF8_FRAGMENT_BUFFER_TYPE = -2147483647,
    WEB_SOCKET_BINARY_MESSAGE_BUFFER_TYPE = -2147483646,
    WEB_SOCKET_BINARY_FRAGMENT_BUFFER_TYPE = -2147483645,
    WEB_SOCKET_CLOSE_BUFFER_TYPE = -2147483644,
    WEB_SOCKET_PING_PONG_BUFFER_TYPE = -2147483643,
    WEB_SOCKET_UNSOLICITED_PONG_BUFFER_TYPE = -2147483642,
}
Public Enum WEB_SOCKET_BUFFER_TYPE As Integer
    WEB_SOCKET_UTF8_MESSAGE_BUFFER_TYPE = -2147483648
    WEB_SOCKET_UTF8_FRAGMENT_BUFFER_TYPE = -2147483647
    WEB_SOCKET_BINARY_MESSAGE_BUFFER_TYPE = -2147483646
    WEB_SOCKET_BINARY_FRAGMENT_BUFFER_TYPE = -2147483645
    WEB_SOCKET_CLOSE_BUFFER_TYPE = -2147483644
    WEB_SOCKET_PING_PONG_BUFFER_TYPE = -2147483643
    WEB_SOCKET_UNSOLICITED_PONG_BUFFER_TYPE = -2147483642
End Enum
import enum

class WEB_SOCKET_BUFFER_TYPE(enum.IntEnum):
    WEB_SOCKET_UTF8_MESSAGE_BUFFER_TYPE = -2147483648
    WEB_SOCKET_UTF8_FRAGMENT_BUFFER_TYPE = -2147483647
    WEB_SOCKET_BINARY_MESSAGE_BUFFER_TYPE = -2147483646
    WEB_SOCKET_BINARY_FRAGMENT_BUFFER_TYPE = -2147483645
    WEB_SOCKET_CLOSE_BUFFER_TYPE = -2147483644
    WEB_SOCKET_PING_PONG_BUFFER_TYPE = -2147483643
    WEB_SOCKET_UNSOLICITED_PONG_BUFFER_TYPE = -2147483642
// WEB_SOCKET_BUFFER_TYPE
pub const WEB_SOCKET_UTF8_MESSAGE_BUFFER_TYPE: i32 = -2147483648;
pub const WEB_SOCKET_UTF8_FRAGMENT_BUFFER_TYPE: i32 = -2147483647;
pub const WEB_SOCKET_BINARY_MESSAGE_BUFFER_TYPE: i32 = -2147483646;
pub const WEB_SOCKET_BINARY_FRAGMENT_BUFFER_TYPE: i32 = -2147483645;
pub const WEB_SOCKET_CLOSE_BUFFER_TYPE: i32 = -2147483644;
pub const WEB_SOCKET_PING_PONG_BUFFER_TYPE: i32 = -2147483643;
pub const WEB_SOCKET_UNSOLICITED_PONG_BUFFER_TYPE: i32 = -2147483642;
// WEB_SOCKET_BUFFER_TYPE
const (
	WEB_SOCKET_UTF8_MESSAGE_BUFFER_TYPE int32 = -2147483648
	WEB_SOCKET_UTF8_FRAGMENT_BUFFER_TYPE int32 = -2147483647
	WEB_SOCKET_BINARY_MESSAGE_BUFFER_TYPE int32 = -2147483646
	WEB_SOCKET_BINARY_FRAGMENT_BUFFER_TYPE int32 = -2147483645
	WEB_SOCKET_CLOSE_BUFFER_TYPE int32 = -2147483644
	WEB_SOCKET_PING_PONG_BUFFER_TYPE int32 = -2147483643
	WEB_SOCKET_UNSOLICITED_PONG_BUFFER_TYPE int32 = -2147483642
)
const
  WEB_SOCKET_UTF8_MESSAGE_BUFFER_TYPE = -2147483648;
  WEB_SOCKET_UTF8_FRAGMENT_BUFFER_TYPE = -2147483647;
  WEB_SOCKET_BINARY_MESSAGE_BUFFER_TYPE = -2147483646;
  WEB_SOCKET_BINARY_FRAGMENT_BUFFER_TYPE = -2147483645;
  WEB_SOCKET_CLOSE_BUFFER_TYPE = -2147483644;
  WEB_SOCKET_PING_PONG_BUFFER_TYPE = -2147483643;
  WEB_SOCKET_UNSOLICITED_PONG_BUFFER_TYPE = -2147483642;
// WEB_SOCKET_BUFFER_TYPE
pub const WEB_SOCKET_UTF8_MESSAGE_BUFFER_TYPE: i32 = -2147483648;
pub const WEB_SOCKET_UTF8_FRAGMENT_BUFFER_TYPE: i32 = -2147483647;
pub const WEB_SOCKET_BINARY_MESSAGE_BUFFER_TYPE: i32 = -2147483646;
pub const WEB_SOCKET_BINARY_FRAGMENT_BUFFER_TYPE: i32 = -2147483645;
pub const WEB_SOCKET_CLOSE_BUFFER_TYPE: i32 = -2147483644;
pub const WEB_SOCKET_PING_PONG_BUFFER_TYPE: i32 = -2147483643;
pub const WEB_SOCKET_UNSOLICITED_PONG_BUFFER_TYPE: i32 = -2147483642;
const
  WEB_SOCKET_UTF8_MESSAGE_BUFFER_TYPE* = -2147483648
  WEB_SOCKET_UTF8_FRAGMENT_BUFFER_TYPE* = -2147483647
  WEB_SOCKET_BINARY_MESSAGE_BUFFER_TYPE* = -2147483646
  WEB_SOCKET_BINARY_FRAGMENT_BUFFER_TYPE* = -2147483645
  WEB_SOCKET_CLOSE_BUFFER_TYPE* = -2147483644
  WEB_SOCKET_PING_PONG_BUFFER_TYPE* = -2147483643
  WEB_SOCKET_UNSOLICITED_PONG_BUFFER_TYPE* = -2147483642
enum WEB_SOCKET_BUFFER_TYPE : int {
    WEB_SOCKET_UTF8_MESSAGE_BUFFER_TYPE = -2147483648,
    WEB_SOCKET_UTF8_FRAGMENT_BUFFER_TYPE = -2147483647,
    WEB_SOCKET_BINARY_MESSAGE_BUFFER_TYPE = -2147483646,
    WEB_SOCKET_BINARY_FRAGMENT_BUFFER_TYPE = -2147483645,
    WEB_SOCKET_CLOSE_BUFFER_TYPE = -2147483644,
    WEB_SOCKET_PING_PONG_BUFFER_TYPE = -2147483643,
    WEB_SOCKET_UNSOLICITED_PONG_BUFFER_TYPE = -2147483642,
}
#define global WEB_SOCKET_UTF8_MESSAGE_BUFFER_TYPE     0x80000000
#define global WEB_SOCKET_UTF8_FRAGMENT_BUFFER_TYPE    0x80000001
#define global WEB_SOCKET_BINARY_MESSAGE_BUFFER_TYPE   0x80000002
#define global WEB_SOCKET_BINARY_FRAGMENT_BUFFER_TYPE  0x80000003
#define global WEB_SOCKET_CLOSE_BUFFER_TYPE            0x80000004
#define global WEB_SOCKET_PING_PONG_BUFFER_TYPE        0x80000005
#define global WEB_SOCKET_UNSOLICITED_PONG_BUFFER_TYPE 0x80000006