如何使用 sails.io 握手查询添加自定义数据
how to add custom data with sails.io handshake query
我想在客户端 sails.io 的初始连接期间发送自定义查询变量。我加了
io.sails.query = "token=fdbfdsjf";
在包含 sails.io.js 之后,但我没有在服务器上的握手数据中看到它,它是:
query:
{ __sails_io_sdk_version: '0.11.0',
__sails_io_sdk_platform: 'browser',
__sails_io_sdk_language: 'javascript',
EIO: '3',
transport: 'polling',
t: '1432569655670-22' }
在 sails.io 连接到服务器之前,将 data/variable 添加到客户端握手的正确方法是什么?
我拦截了 window.io() 函数调用以将我的查询参数注入选项对象的 .query 属性(.io() 的第二个参数)
<script>
(function () {
var io;
Object.defineProperty(window, 'io', {
get: function get() {
return io;
},
set: function set(iofunc) {
io = function(){
var opts = arguments[1];
if (typeof opts.query === 'string') {
opts.query += '&token=<%=_csrf%>';
}
return iofunc.apply(this, arguments);
};
}
});
})();
</script>
<!--SCRIPTS-->
<script src="/js/dependencies/sails.io.js"></script>
我想在客户端 sails.io 的初始连接期间发送自定义查询变量。我加了
io.sails.query = "token=fdbfdsjf";
在包含 sails.io.js 之后,但我没有在服务器上的握手数据中看到它,它是:
query:
{ __sails_io_sdk_version: '0.11.0',
__sails_io_sdk_platform: 'browser',
__sails_io_sdk_language: 'javascript',
EIO: '3',
transport: 'polling',
t: '1432569655670-22' }
在 sails.io 连接到服务器之前,将 data/variable 添加到客户端握手的正确方法是什么?
我拦截了 window.io() 函数调用以将我的查询参数注入选项对象的 .query 属性(.io() 的第二个参数)
<script>
(function () {
var io;
Object.defineProperty(window, 'io', {
get: function get() {
return io;
},
set: function set(iofunc) {
io = function(){
var opts = arguments[1];
if (typeof opts.query === 'string') {
opts.query += '&token=<%=_csrf%>';
}
return iofunc.apply(this, arguments);
};
}
});
})();
</script>
<!--SCRIPTS-->
<script src="/js/dependencies/sails.io.js"></script>