我有一个基于Sails的前端系统,用于处理服务器上的查看操作。 我需要一些后端操作才能继续,所以我尝试使用socket.io实现连接到sails.js的node.js应用程序。
在Sails方面,我有一个控制器,使用以下方法:
init: function(req, res, next) {
Watcher.find().exec(function (err, watchers) {
Watcher.subscribe(req.socket, watchers);
});
},
在客户端,我执行最小操作:
var io = require('socket.io-client');
var socket = io.connect("http://localhost:1337");
Sails启动没有任何问题,监听默认端口1337.我检查了ssh命令netstat -la | grep 1337
当我开始第二个应用程序执行node app.js
时,我收到以下错误:
warn: handshake error No cookie transmitted with socket.io connection.
Are you trying to access your Sails.js server via socket.io on a 3rd party domain?
If you're ok with losing users' session data, you can set `authorization: false` to disable cookie-checking.
Or you can send a JSONP request first from the client to the Sails.js server to get the cookie (be sure it's the same domain!!)
此时,我被卡住了。 你们当中有些人会有想法吗?