MessageWebSocketControl クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
MessageWebSocket 上のソケット コントロール データを提供します。
public ref class MessageWebSocketControl sealed
public ref class MessageWebSocketControl sealed : IWebSocketControl2
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class MessageWebSocketControl final
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class MessageWebSocketControl final : IWebSocketControl2
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class MessageWebSocketControl
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class MessageWebSocketControl : IWebSocketControl2
Public NotInheritable Class MessageWebSocketControl
Public NotInheritable Class MessageWebSocketControl
Implements IWebSocketControl2
- 継承
- 属性
- 実装
Windows の要件
デバイス ファミリ |
Windows 10 (10.0.10240.0 で導入)
|
API contract |
Windows.Foundation.UniversalApiContract (v1.0 で導入)
|
注釈
MessageWebSocketControl クラスは、 MessageWebSocket オブジェクトの高度なソケット制御データへのアクセスを提供します。
MessageWebSocketControl オブジェクトは、親 MessageWebSocket オブジェクトを使用して自動的に作成されます。 MessageWebSocket.Control プロパティは、関連付けられた MessageWebSocket オブジェクトへのアクセスを提供します。
SupportedProtocols プロパティは、このプロパティの値を取得し、いつでも呼び出すことができます。
MessageType プロパティは、MessageWebSocket が接続される前または後にいつでも変更できます。 これにより、アプリは必要に応じ、バイナリ メッセージと UTF-8 メッセージを切り替えることができます。
MessageWebSocket が接続される前に、OutboundBufferSizeInBytes プロパティを設定する必要があります。 MessageWebSocket が接続された後にこのプロパティを設定しても、効果はありません。
DatagramSocket がバインドまたは接続される前に、MessageWebSocketControl の他のプロパティ値に対する変更を設定する必要があります。 その結果、MaxMessageSize、ProxyCredential、OutboundBufferSizeInBytes、または ServerCredential プロパティを変更する必要がある場合は、MessageWebSocket で ConnectAsync メソッドを正常に呼び出す前に、これらの変更が発生する必要があります。
次の例では、 MessageWebSocket を作成し、 MessageWebSocketControl.MessageType プロパティを binary に設定する方法を示します。 (他のプロパティも同様の方法で設定できます)。これが完了すると、アプリは MessageWebSocket に接続できます。
using Windows.Networking.Sockets;
MessageWebSocket clientWebSocket = new MessageWebSocket();
// Get the current setting for this option.
// This isn't required, but it shows how to get the current setting.
SocketMessageType currentSetting = clientWebSocket.Control.MessageType;
// Set messageType to Binary.
clientWebSocket.Control.MessageType = SocketMessageType.Binary;
// Now you can call the ConnectAsync method to connect the MessageWebSocket.
#include <winrt/Windows.Networking.Sockets.h>
using namespace winrt;
...
Windows::Networking::Sockets::MessageWebSocket clientSocket;
// Get the current setting for this option.
// This isn't required, but it shows how to get the current setting.
auto currentSetting{ clientSocket.Control().MessageType() };
// Set QualityOfService to Binary.
clientSocket.Control().MessageType(Windows::Networking::Sockets::SocketMessageType::Binary);
// Now you can call the ConnectAsync function to connect the MessageWebSocket.
using namespace Windows::Networking::Sockets;
MessageWebSocket^ clientWebSocket = ref new MessageWebSocket();
// Get the current setting for this option.
// This isn't required, but it shows how to get the current setting.
SocketMessageType currentSetting = clientWebSocket->Control->MessageType;
// Set messageType to Binary.
clientWebSocket->Control->MessageType = SocketMessageType::Binary;
// Now you can call the ConnectAsync method to connect the MessageWebSocket.
MessageWebSocketControl の使用方法の詳細については、「 高度な WebSocket コントロールを使用する方法」を参照してください。
バージョン履歴
Windows のバージョン | SDK バージョン | 追加された値 |
---|---|---|
1607 | 14393 | IgnorableServerCertificateErrors |
1709 | 16299 | ActualUnsolicitedPongInterval |
1709 | 16299 | ClientCertificate |
1709 | 16299 | DesiredUnsolicitedPongInterval |
1709 | 16299 | ReceiveMode |
プロパティ
ActualUnsolicitedPongInterval |
アプリが実際の未承諾の WebSocket PONG 間隔を取得できるようにします。 |
ClientCertificate |
セキュリティで保護された WebSocket 接続が確立されたときにクライアントによって提供される証明書を取得します。 |
DesiredUnsolicitedPongInterval |
アプリが目的の未承諾の WebSocket PONG 間隔を取得および設定できるようにします。 |
IgnorableServerCertificateErrors |
無視できるサーバー証明書エラーの一覧を取得します。 この一覧を取得し、セキュリティで保護された WebSocket (wss:// プロトコル) サーバー証明書検証プロセス中に無視するサーバー証明書エラーの ChainValidationResult 値を追加します。 |
MaxMessageSize |
MessageWebSocket オブジェクトで構成する WebSocket メッセージの最大メッセージ サイズ (バイト単位)。 |
MessageType |
書き込み操作用に MessageWebSocket オブジェクトに構成する WebSocket メッセージの種類。 |
OutboundBufferSizeInBytes |
MessageWebSocket オブジェクトでデータを送信するために使用される送信バッファーのサイズ (バイト単位)。 |
ProxyCredential |
MessageWebSocket オブジェクトを使用した HTTP ヘッダー認証を使用してプロキシ サーバーに対する認証に使用する資格情報。 |
ReceiveMode |
クライアントが完全または部分的なメッセージの受信を制御できるようにします。 |
ServerCredential |
MessageWebSocket オブジェクトを使用した HTTP ヘッダー認証を使用して WebSocket サーバーに対する認証に使用する資格情報。 |
SupportedProtocols |
接続ハンドシェイク中にサーバーにアドバタイズされるサポートされているサブプロトコルの一覧を追加するために使用できるコレクションを取得します。 |