共用方式為


MessageWebSocketControl 類別

定義

提供 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
繼承
Object Platform::Object IInspectable MessageWebSocketControl
屬性
實作

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 上其他屬性值的任何變更。 因此,如果您需要對MaxMessageSizeProxyCredentialOutboundBufferSizeInBytesServerCredential屬性進行變更,則必須在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 標頭驗證向 Proxy 伺服器進行驗證的認證。

ReceiveMode

可讓用戶端控制接收完整或部分訊息。

ServerCredential

用來透過 使用 MessageWebSocket 物件的 HTTP 標頭驗證向 WebSocket 伺服器驗證的認證。

SupportedProtocols

取得集合,可用來新增支援子通訊協定的清單,這些子通訊協定將在連接交握期間公告至伺服器。

適用於

另請參閱