1

之前我会

<script>
var socket = io.connect(URL);
socket.emit("hello", {});
</script>

使用 Sails.io.js,我尝试io.sails.emit("myevent", jsonData)了......但不能这样做:

io.socket.emit is not a function

所以我真的向 websocket (从浏览器)发送一条消息到你加入的房间吗?

我错过了什么?

http://sailsjs.org/documentation/reference/web-sockets/socket-client

4

1 回答 1

1

目前.emit()sails.socket 中没有方法。

您应该使用.get().post().put().delete()

如何使用它:

代替

socket.emit('eventName', jsonData)

现在你使用:

socket.get('routeToController', jsonData, callback);

例子:

您可以创建控制器SocketController.js

module.exports = {
    myevent: function(req, res) {
        res.json({
            value: 1
        });
    }
};

补充config/routes.js

'GET /socket/myevent': 'SocketController.myevent'

现在您可以致电:

socket.get('/socket/myevent', jsonData, function(error, data){
    //data = {value: 1}
});
于 2016-10-25T13:13:51.587 回答