sails.io.js - nodejs - 资源丰富的PubSub没有收到模型事件

时间:2015-11-25 21:34:27

标签: node.js socket.io sails.js

我正在尝试订阅nodejs应用程序来模拟帆中的事件。这是我的代码:

var socketIOClient = require('socket.io-client'),
    sailsIOClient = require('sails.io.js');

var io = sailsIOClient(socketIOClient);

io.sails.url = 'http://localhost:1337';

io.socket.on("agent", function(event) {
  console.log(event);
})

io.socket.get("/agent", function(resData, jwres) {})

当客户端(nodejs)连接时,这是指向sails服务器上所有输出的链接:

https://gist.github.com/CiscoKidxx/e5af93ebcc24702ba4f8

我的理解是,当我创建一个新的代理时,它应该触发一个列出更改的console.log(事件)。这不会发生。在脚本启动时,我确实得到了“现在连接到风帆”。有什么想法吗?

以下是我在UserController中创建新代理的呼吁:

Agent.create({
  syncToken: token,
  owner: user.id
}).exec(function (err, newAgent) {
  Agent.publishUpdate(newAgent.id, {syncToken: newAgent.syncToken});

1 个答案:

答案 0 :(得分:6)

上面的服务器端代码段不会在回调中显示对 Agent.publishCreate 的调用,而是显示 publishUpdate

据我所知,publishCreate仅在使用蓝图时自动触发 - 但不适用于上面的Agent.create之类的程序化调用。

因此将其从publishUpdate更改为publishCreate可能会在您的上下文中修复它。