Overview
概要
URLSessionWebSocketTask
is a concrete subclass of URLSessionTask
that provides a message-oriented transport protocol over TCP and TLS in the form of WebSocket framing. It follows the WebSocket Protocol defined in RFC 6455.
URLSessionWebSocketTask
はURLSessionTask
の具象サブクラスです、それはメッセージ指向の転送プロトコルをTCPとTLS越しにWebSocketフレーミングの形式において提供します。それは、RFC 6455で定義される「WebSocketプロトコル」に従います。
You create a URLSessionWebSocketTask
with either a ws:
or wss:
URL. When creating the task, you can also provide a list of protocols to advertise during the handshake phase. Once the handshake completes, your app receives notifications through the session’s delegate
.
あなたは、URLSessionWebSocketTask
をws:
またはwss:
URLのどちらかで作成します。このタスクを作成する場合、あなたはまたハンドシェイク局面の間に宣伝するプロトコルの一覧を提供できます。一旦ハンドシェイクが完了するならば、delegate
.
You send data with send(_:completionHandler:)
and receive data with receive(completionHandler:)
. The task performs reads and writes asynchronously, and allows you to send and receive messages that contain both binary frames and UTF-8 encoded text frames. The task enqueues any reads or writes you perform prior to the handshake’s completion, and executes them after the handshake completes.
あなたは、データをsend(_:completionHandler:)
で送って、そしてデータをreceive(completionHandler:)
で受け取ります。タスクは、読み出しおよび書き出しを非同期に実行します、そしてあなたにメッセージを送信および受信させます、それはバイナリフレームとUTF-8符号化テキストフレームの両方を含みます。タスクは、ハンドシェイクの完了の前にあなたが実行するあらゆる読み出しまたは書き出しをキューに入れます、そしてそれらをハンドシェイク完了の後に遂行します。
URLSessionWebSocketTask
supports redirection and authentication like other types of tasks do, using the methods in URLSessionTaskDelegate
. The WebSocket task calls the redirection and authentication delegate methods prior to completing the handshake. The WebSocket task also supports cookies, by storing cookies to the session configuration’s httpCookieStorage
, and attaches cookies to outgoing HTTP handshake requests.
URLSessionWebSocketTask
は、タスクの他の型がするようにリダイレクションと認証を、URLSessionTaskDelegate
の中のメソッドを使ってサポートします。WebSocketタスクは、リダイレクションおよび認証委任先メソッドをハンドシェイクを完了する前に呼び出します。WebSocketタスクはまたクッキーをサポートします、クッキーをセッション構成設定のもつhttpCookieStorage
に格納することによって、そしてクッキーを発信HTTPハンドシェイクリクエストに添付します。