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 標頭驗證向 Proxy 伺服器進行驗證的認證。 |
ReceiveMode |
可讓用戶端控制接收完整或部分訊息。 |
ServerCredential |
用來透過 使用 MessageWebSocket 物件的 HTTP 標頭驗證向 WebSocket 伺服器驗證的認證。 |
SupportedProtocols |
取得集合,可用來新增支援子通訊協定的清單,這些子通訊協定將在連接交握期間公告至伺服器。 |