Sockets Sailsjs:在Sails 0.11中,如何不使用带套接字的onConnect生命周期回调

Sockets Sailsjs:在Sails 0.11中,如何不使用带套接字的onConnect生命周期回调,sockets,sails.js,Sockets,Sails.js,在Sails 0.11中,socket不推荐使用onConnect生命周期回调。升级指南说,如果在连接新套接字时需要进行任何初始设置,“在套接字连接后从客户端发送初始请求” 从连接的客户端发送请求非常简单。但是,如果不使用onConnect生命周期回调来获取服务器上的套接字,如何为该事件设置侦听器?在onConnect函数之外,是否有其他方法获取套接字并为该套接字设置侦听器 想法是使用前端的Sails套接字客户端调用Sails后端的常规端点。Sails的神奇之处在于它将套接字请求作为常规HTTP

在Sails 0.11中,socket不推荐使用
onConnect
生命周期回调。升级指南说,如果在连接新套接字时需要进行任何初始设置,“在套接字连接后从客户端发送初始请求”


从连接的客户端发送请求非常简单。但是,如果不使用
onConnect
生命周期回调来获取服务器上的套接字,如何为该事件设置侦听器?在
onConnect
函数之外,是否有其他方法获取套接字并为该套接字设置侦听器

想法是使用前端的Sails套接字客户端调用Sails后端的常规端点。Sails的神奇之处在于它将套接字请求作为常规HTTP请求进行路由。因此,在前端,您可以执行以下操作:

<script src="/js/dependencies/sails.io.js"></script>
<script>
  // This will be queued until socket actually connects
  io.socket.get("/helloworld", function(response) {
    console.log("Got response: ", response);
  });
</script>

//这将一直排队,直到套接字实际连接为止
io.socket.get(“/helloworld”,函数(响应){
log(“得到响应:”,响应);
});

调用在
config/routes.js
文件中设置的
/helloworld
路由,并在其中执行任何“onConnect”样式的设置。您可以在控制器操作中使用
req.isSocket
,以确保请求来自套接字。

Ah,这很有意义。我们正在尝试构建一个实时API,其他应用程序将从其服务器与之交互,而他们可能没有sails.io.js库,因此我们似乎只需要使用
sails.io.on('connection')
的方式来做事情,而不是依靠sails为我们做这件事,除非有其他应用程序可以使用服务器端的sails.io.js库。你能看看这个问题吗?