req.isSocket
一个标志,指示此请求 (req
) 是否源自 Socket.io 连接。
req.isSocket;
if (req.isSocket){
// You're a socket. Do cool socket stuff like subscribing.
User.subscribe(req, [req.session.userId]);
}
else {
// Just another HTTP request.
// (`req.isSocket` is undefined)
}
- 对于允许 HTTP 请求跳过对 PubSub 或以 WebSocket 为中心的函数(如
subscribe()
或watch()
)的调用很有用,这些函数依赖于实际的 Socket.io 请求。这允许您为 WebSocket 和 HTTP 客户端重用后端代码。- 正如您可能预料的那样,在运行**发布到其他**已连接套接字的函数之前,不需要检查
req.isSocket
。这些函数不依赖于请求,因此无论哪种方式都可以工作。