このセクションでは、各 SailsSocket インスタンスで使用可能なメソッドについて説明します。これらのメソッドのほとんどは、ソケットがサーバーに接続する前でも呼び出すことができます。.get() や .request() のようなリクエストメソッドの場合、ソケットが接続するまで呼び出しはキューに入れられ、接続されると順番に実行されます。
SailsSocket インスタンスで使用する最も一般的なメソッドは、メインのSocket クライアントリファレンスセクションに記載されています。これらには、.get()、.put()、.post()、.delete()、.request()、.on()、および.off()が含まれます。
基本的な通信とイベントリスニングメソッドに加えて、各 SailsSocket インスタンス(io.socket を含む)は、サーバー接続を処理するためのいくつかのメソッドを公開しています。
.isConnected()SailsSocket インスタンスが現在サーバーに接続されているかどうかを判定します。接続が確立されている場合はtrueを返します。
io.socket.isConnected();
.isConnecting()SailsSocket インスタンスが現在サーバーへの接続処理中かどうかを判定します。接続が試行されている場合はtrueを返します。
io.socket.isConnecting();
.mightBeAboutToAutoConnect()SailsSocket インスタンスが既にロードされているが、まだ完全に構成されていないか、自動接続を試行していないことを検出します。
sails.io.js ライブラリは、イベントループの1ティック待ってから、autoConnectが有効になっているかどうかを確認し、有効な場合は接続を試みます。これにより、接続を試みる前にSailsSocketインスタンスを構成できます(例:io.sails.urlの設定)。mightBeAboutToAutoConnect()メソッドは、sails.io.jsがロードされたが、イベントループの必要なティックがまだ経過していない場合にtrueを返します。
io.socket.mightBeAboutToAutoConnect();
.disconnect()SailsSocket インスタンスをサーバーから切断します。ソケットが既に切断されている場合はエラーをスローします。
io.socket.disconnect();
.reconnect()切断された後(非意図的に、または.disconnect()の呼び出しによって)SailsSocket インスタンスをサーバーに再接続します。インスタンスは、現在構成されているプロパティを使用して接続します。ソケットが既にサーバーに接続されている場合は、.reconnect()はエラーをスローします。
io.socket.reconnect();
インスタンスが切断状態の場合、そのプロパティを変更できます。つまり、あるサーバーから切断されたインスタンスは、イベントバインディングやキューに入れられたリクエストを失うことなく、別のサーバーに再接続できます。
.removeAllListeners()connectやdisconnectを含む、SailsSocket インスタンス上のサーバー関連のイベントのリスニングを停止します。
io.socket.removeAllListeners();