我正在尝试在chrome扩展中使用sails.io.js. 我正在手动设置我的sails服务器的URL: io.sails.url = "http://localhost:1337"; 但我想从chrome本地存储中获取url(以保存url不直接在代码中).但问题是,如her
我正在手动设置我的sails服务器的URL:
io.sails.url = "http://localhost:1337";
但我想从chrome本地存储中获取url(以保存url不直接在代码中).但问题是,如here所述:
You get 1 clock tick after the import before the socket attempts to
connect.
因此,如果我从chrome本地存储中获取URL:
storage.get('url', function(result){ var url = result.url; io.sails.url = url ; });
太晚了!必须在sails.io.js代码之后设置选项.
所以我在考虑禁用autoConnect:
io.sails.autoConnect = false;
(如there所述)
但现在我的问题是:如何手动连接io.sails?
我试过io.sails.connect(),没用.有任何想法吗 ?
非常感谢你,
嗯,这是你的自定义,但如果你想对sails.io.js进行少量更改,那么你可以>将setTimeout更改为io.sails.doit = function(){
>扔掉io.sails.autoConnect检查
>准备好后调用io.sails.doit(..)
另外,如果你想在握手期间传递一些东西,你可以添加{‘query’:’param =’value}作为io.connect的第二个参数(io.sails.url);然后可以通过socket.handshake.query.param在sails app的config / sockets.js中使用它.