0

我遇到了一个问题,当我使用快捷路线创建记录时,我从风帆资源丰富的 pubsub获取事件,但不是使用RESTful 路线

在我的客户端代码中,我有一个用于监听模型的风帆套接字:

io.socket.on('users', function(event){console.log(event);})

如果我使用快捷方式创建记录(http://localhost:1337/users/create?name=test),我会按预期在控制台中获得回调:

>{verb: "created", data: {…}, id: 44}

但是,如果我使用套接字从客户端发布,则回调永远不会触发。

io.socket.post('/users', { name: 'test' });

该记录是在数据库中创建的,更令人困惑的是 Sails 服务器日志显示它正在发布消息:

silly: Published message to  sails_model_create_users :  { verb: 'created',
  data:
   { name: 'test',
     createdAt: '2017-10-09T02:58:18.218Z',
     updatedAt: '2017-10-09T02:58:18.218Z',
     id: 44 },
  id: 44 }

我是使用通用蓝图,sails 是 v0.12.14。任何想法我做错了什么?

4

1 回答 1

0

我弄清楚了为什么我没有在 pubsub 上恢复这些事件。Sails 排除了从事件中发送请求的套接字。您可以从 post 回调中获取结果,但这会破坏我的好数据流。所以我最终使用 io.sails.connect() 创建了 2 个套接字,一个用于 crud 调用,一个用于 pubsib。

于 2017-10-09T14:36:45.623 回答