gpt4 book ai didi

node.js - 如何在 Sails.js 中监听来自套接字的消息?

转载 作者:太空宇宙 更新时间:2023-11-03 23:07:39 25 4
gpt4 key购买 nike

所以我想监听从 Sails.js 应用程序中的套接字获取的消息。我怎样才能实现这一目标?

有类似socket.io的方法吗?

最佳答案

确实有类似 socket.io on 方法的东西。

看看这里: http://sailsjs.org/#!/documentation/reference/websockets/resourceful-pubsub

<小时/>

这是一个小例子。

假设您正在使用 Model.message broadcast your messages ,并且正在使用 Sails' Socket Client

在此示例中,我们假设:

  • 您的 Controller 路由是:/messageStream
  • 您使用的模型是:User

为了监听消息,您必须首先订阅上下文。那么让我们继续...

在 Controller 中订阅:

User.subscribe(req.socket, { id: req.user.id }, 'message');

第一个参数是请求套接字,第二个参数是您想要订阅上下文的用户列表(在本例中,只有一个user),第三个​​是您想要订阅的上下文,在本例中只是消息上下文。

监听客户端中的消息:

io.socket.get('/messageStream');
io.socket.on('user', function(obj) {
if(obj.verb === 'messaged') {
console.log(obj);
// Do something fun with the message object!
}
});

io.socket.get 中的参数是 Controller 的路由。

io.socket.on 中的第一个参数是小写的模型名称

请注意,当您收到消息时,收到的对象带有 messaging 动词。

...差不多就是这样了。

关于node.js - 如何在 Sails.js 中监听来自套接字的消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29524366/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com