io.sails
物件io.sails
物件是 sails.io.js
函式庫及其建立的任何 sockets 的全域配置選項的所在地。 io.sails
上的大多數屬性在將客戶端 socket 連接到伺服器時,或作為客戶端函式庫本身的最上層配置時,會被用作設定。 io.sails
也提供一個 .connect()
方法,用於手動建立新的 socket 連線。
請參閱 Socket Client 以取得關於配置 io.sails
的不同選項的資訊。
.connect()
方法如果 io.sails.autoConnect
為 false
,或者如果您需要使用 sails.io.js
函式庫建立多個 socket 連線,您可以透過 io.sails.connect([url], [options])
來實現。 兩個參數都是可選的,並且 io.sails
屬性(例如 url
、transports
等)的值會被用作預設值。 請參閱 SailsSocket 屬性參考 以取得選項。
io.sails.autoConnect
當 io.sails.autoConnect
設定為 true
(預設設定)時,函式庫將在載入後等待一個事件循環週期,然後嘗試建立一個新的 SailsSocket
並將其連接到 io.sails.url
指定的 URL。 在瀏覽器中使用時,新的 socket 將會以 io.socket
的形式公開。 在 Node.js 腳本中使用時,新的 socket 將會作為用於初始化 sails.io.js
函式庫的變數的 socket
屬性附加。
io.sails.reconnection
當 io.sails.reconnection
設定為 true
時,如果 sockets 非預期地斷線(也就是說,不是由於呼叫 .disconnect()
的結果),sockets 將會自動(且持續地)嘗試重新連接到伺服器。 如果設定為 false
(預設值),則不會進行自動重新連接嘗試。 預設值為 false
。
io.sails.environment
使用 io.sails.environment
為 sails.io.js
設定環境,這會影響記錄到控制台的資訊量。 有效值為 development
(完整日誌)和 production
(最小日誌)。
io.sails
的其他屬性在建立新的 sockets 時(無論是 eager socket 還是透過 io.sails.connect()
)都會被用作預設值。 請參閱 SailsSocket 屬性參考 以取得可用選項的完整列表,以及預設 io.sails
值的表格。 以下是最常用的屬性
屬性 | 類型 | 預設值 | 詳細資訊 |
---|---|---|---|
url | io.sails.url 的值 |
socket 連接到的 URL,或將嘗試連接到的 URL。 | |
transports | io.sails.transports 的值 |
socket 將嘗試使用的傳輸方式。 傳輸方式將按順序嘗試,並允許升級:也就是說,如果您同時列出 "polling" 和 "websocket",那麼在建立長輪詢連線後,伺服器將嘗試將其升級為 websocket 連線。 此設定應與您的 Sails 應用程式中 sails.config.sockets.transports 的值相符。 |
|
headers | io.sails.headers 的值 |
預設情況下,從此 socket 發送的每個請求都將包含的標頭字典。 可以透過 .request() 中的 headers 選項覆寫。 |