sails.sockets
)Sails 公開了數個方法 (sails.sockets.*
),提供了一個簡單的介面,用於與已連線的 socket 用戶端進行即時通訊。這些方法對於將事件和資料即時推送到已連線的用戶端非常有用,而無需等待他們的 HTTP 請求。無論用戶端 socket 是從瀏覽器標籤頁、iOS 應用程式還是您最喜歡的家用 IoT 設備連線,這些方法都可用。
這些方法是使用 Socket.IO 的內建實例實作的,可以直接作為 sails.io
使用。但是,您幾乎永遠不應該直接使用 sails.io
。相反地,您應該呼叫 sails.sockets.*
上可用的方法。此外,對於某些使用案例,您可能還想利用資源型 PubSub 方法,這些方法存取更高層次的抽象,並由 Sails 內建的 blueprint API 使用。
方法 | 描述 |
---|---|
.addRoomMembersToRooms() |
將一個房間的所有成員訂閱到一個或多個額外房間。 |
.blast() |
向所有連接到伺服器的 socket 廣播訊息。 |
.broadcast() |
向房間中的所有 socket 廣播訊息。 |
.getId() |
從傳入的 socket 請求 (req ) 中解析 socket ID。 |
.join() |
將 socket 訂閱到房間。 |
.leave() |
從房間取消訂閱 socket。 |
.leaveAll() |
從一個房間取消訂閱該房間的所有成員,並從他們目前訂閱的每個其他房間取消訂閱,但與每個 socket ID 同名的自動房間除外。 |
.removeRoomMembersFromRooms() |
從一個或多個其他房間取消訂閱房間的所有成員。 |
沒有看到您在上面尋找的方法嗎?許多
sails.sockets
方法已在 Sails v0.12 中棄用,原因是因為已經有更高效能的別名可用,或者因為效能和可擴展性原因。請參閱 v0.12 遷移指南 以取得更多資訊。
req
)
res
)