HttpListenerContext.AcceptWebSocketAsync 方法

定義

以非同步作業的方式接受 WebSocket 連接。

多載

AcceptWebSocketAsync(String)

以非同步作業的方式接受 WebSocket 連接。

AcceptWebSocketAsync(String, TimeSpan)

以非同步作業的方式接受 WebSocket 連接,並指定支援的 WebSocket 附屬通訊協定和 WebSocket Keep-alive 間隔。

AcceptWebSocketAsync(String, Int32, TimeSpan)

以非同步作業的方式接受 WebSocket 連接,並指定支援的 WebSocket 附屬通訊協定、接收緩衝區大小和 WebSocket Keep-alive 間隔。

AcceptWebSocketAsync(String, Int32, TimeSpan, ArraySegment<Byte>)

以非同步作業的方式接受 WebSocket 連接,並指定支援的 WebSocket 附屬通訊協定、接收緩衝區大小、WebSocket Keep-alive 間隔和內部緩衝區。

AcceptWebSocketAsync(String)

以非同步作業的方式接受 WebSocket 連接。

public:
 System::Threading::Tasks::Task<System::Net::WebSockets::HttpListenerWebSocketContext ^> ^ AcceptWebSocketAsync(System::String ^ subProtocol);
public System.Threading.Tasks.Task<System.Net.WebSockets.HttpListenerWebSocketContext> AcceptWebSocketAsync (string subProtocol);
public System.Threading.Tasks.Task<System.Net.WebSockets.HttpListenerWebSocketContext> AcceptWebSocketAsync (string? subProtocol);
member this.AcceptWebSocketAsync : string -> System.Threading.Tasks.Task<System.Net.WebSockets.HttpListenerWebSocketContext>
Public Function AcceptWebSocketAsync (subProtocol As String) As Task(Of HttpListenerWebSocketContext)

參數

subProtocol
String

支援的 WebSocket 子通訊協定。

傳回

Task<HttpListenerWebSocketContext>

工作物件,表示非同步作業。 工作物件上的 Result 屬性會傳回 HttpListenerWebSocketContext 物件。

例外狀況

subProtocol 為空字串 -或- subProtocol 包含不合法的字元。

傳送回應以完成 WebSocket 信號交換時發生錯誤。

備註

這項作業不會封鎖。 傳回 Task<TResult> 的物件會在接受 WebSocket 連接之後完成。

接收緩衝區的大小為 16,385 個位元組。 WebSocket 保持運作間隔設定為預設值 30,000 (30 秒) 。

另請參閱

適用於

AcceptWebSocketAsync(String, TimeSpan)

以非同步作業的方式接受 WebSocket 連接,並指定支援的 WebSocket 附屬通訊協定和 WebSocket Keep-alive 間隔。

public:
 System::Threading::Tasks::Task<System::Net::WebSockets::HttpListenerWebSocketContext ^> ^ AcceptWebSocketAsync(System::String ^ subProtocol, TimeSpan keepAliveInterval);
public System.Threading.Tasks.Task<System.Net.WebSockets.HttpListenerWebSocketContext> AcceptWebSocketAsync (string subProtocol, TimeSpan keepAliveInterval);
public System.Threading.Tasks.Task<System.Net.WebSockets.HttpListenerWebSocketContext> AcceptWebSocketAsync (string? subProtocol, TimeSpan keepAliveInterval);
member this.AcceptWebSocketAsync : string * TimeSpan -> System.Threading.Tasks.Task<System.Net.WebSockets.HttpListenerWebSocketContext>
Public Function AcceptWebSocketAsync (subProtocol As String, keepAliveInterval As TimeSpan) As Task(Of HttpListenerWebSocketContext)

參數

subProtocol
String

支援的 WebSocket 子通訊協定。

keepAliveInterval
TimeSpan

WebSocket 通訊協定保持連接間隔 (以毫秒為單位)。

傳回

Task<HttpListenerWebSocketContext>

工作物件,表示非同步作業。 工作物件上的 Result 屬性會傳回 HttpListenerWebSocketContext 物件。

例外狀況

subProtocol 為空字串 -或- subProtocol 包含不合法的字元。

keepAliveInterval 太小了。

傳送回應以完成 WebSocket 信號交換時發生錯誤。

備註

這項作業不會封鎖。 傳回 Task<TResult> 的物件會在接受 WebSocket 連接之後完成。

接收緩衝區的大小為 16,385 個位元組。

另請參閱

適用於

AcceptWebSocketAsync(String, Int32, TimeSpan)

以非同步作業的方式接受 WebSocket 連接,並指定支援的 WebSocket 附屬通訊協定、接收緩衝區大小和 WebSocket Keep-alive 間隔。

public:
 System::Threading::Tasks::Task<System::Net::WebSockets::HttpListenerWebSocketContext ^> ^ AcceptWebSocketAsync(System::String ^ subProtocol, int receiveBufferSize, TimeSpan keepAliveInterval);
public System.Threading.Tasks.Task<System.Net.WebSockets.HttpListenerWebSocketContext> AcceptWebSocketAsync (string subProtocol, int receiveBufferSize, TimeSpan keepAliveInterval);
public System.Threading.Tasks.Task<System.Net.WebSockets.HttpListenerWebSocketContext> AcceptWebSocketAsync (string? subProtocol, int receiveBufferSize, TimeSpan keepAliveInterval);
member this.AcceptWebSocketAsync : string * int * TimeSpan -> System.Threading.Tasks.Task<System.Net.WebSockets.HttpListenerWebSocketContext>
Public Function AcceptWebSocketAsync (subProtocol As String, receiveBufferSize As Integer, keepAliveInterval As TimeSpan) As Task(Of HttpListenerWebSocketContext)

參數

subProtocol
String

支援的 WebSocket 子通訊協定。

receiveBufferSize
Int32

接收緩衝區大小 (以位元組為單位)。

keepAliveInterval
TimeSpan

WebSocket 通訊協定保持連接間隔 (以毫秒為單位)。

傳回

Task<HttpListenerWebSocketContext>

工作物件,表示非同步作業。 工作物件上的 Result 屬性會傳回 HttpListenerWebSocketContext 物件。

例外狀況

subProtocol 為空字串 -或- subProtocol 包含不合法的字元。

keepAliveInterval 太小了。

-或- receiveBufferSize 小於 16 位元組。 -或- receiveBufferSize 大於 64KB。

傳送回應以完成 WebSocket 信號交換時發生錯誤。

備註

這項作業不會封鎖。 傳回 Task<TResult> 的 > 物件會在接受 WebSocket 連接之後完成。

另請參閱

適用於

AcceptWebSocketAsync(String, Int32, TimeSpan, ArraySegment<Byte>)

以非同步作業的方式接受 WebSocket 連接,並指定支援的 WebSocket 附屬通訊協定、接收緩衝區大小、WebSocket Keep-alive 間隔和內部緩衝區。

public:
 System::Threading::Tasks::Task<System::Net::WebSockets::HttpListenerWebSocketContext ^> ^ AcceptWebSocketAsync(System::String ^ subProtocol, int receiveBufferSize, TimeSpan keepAliveInterval, ArraySegment<System::Byte> internalBuffer);
public System.Threading.Tasks.Task<System.Net.WebSockets.HttpListenerWebSocketContext> AcceptWebSocketAsync (string subProtocol, int receiveBufferSize, TimeSpan keepAliveInterval, ArraySegment<byte> internalBuffer);
public System.Threading.Tasks.Task<System.Net.WebSockets.HttpListenerWebSocketContext> AcceptWebSocketAsync (string? subProtocol, int receiveBufferSize, TimeSpan keepAliveInterval, ArraySegment<byte> internalBuffer);
member this.AcceptWebSocketAsync : string * int * TimeSpan * ArraySegment<byte> -> System.Threading.Tasks.Task<System.Net.WebSockets.HttpListenerWebSocketContext>
Public Function AcceptWebSocketAsync (subProtocol As String, receiveBufferSize As Integer, keepAliveInterval As TimeSpan, internalBuffer As ArraySegment(Of Byte)) As Task(Of HttpListenerWebSocketContext)

參數

subProtocol
String

支援的 WebSocket 子通訊協定。

receiveBufferSize
Int32

接收緩衝區大小 (以位元組為單位)。

keepAliveInterval
TimeSpan

WebSocket 通訊協定保持連接間隔 (以毫秒為單位)。

internalBuffer
ArraySegment<Byte>

這項作業要使用的內部緩衝區。

傳回

Task<HttpListenerWebSocketContext>

工作物件,表示非同步作業。 工作物件上的 Result 屬性會傳回 HttpListenerWebSocketContext 物件。

例外狀況

subProtocol 為空字串 -或- subProtocol 包含不合法的字元。

keepAliveInterval 太小了。

-或- receiveBufferSize 小於 16 位元組。 -或- receiveBufferSize 大於 64KB。

傳送回應以完成 WebSocket 信號交換時發生錯誤。

備註

這項作業不會封鎖。 傳回 Task<TResult> 的物件會在接受 WebSocket 連接之後完成。

另請參閱

適用於