首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Sails.io.js :检查套接字连接是否已建立

Sails.io.js :检查套接字连接是否已建立
EN

Stack Overflow用户
提问于 2015-02-03 19:28:15
回答 1查看 1.3K关注 0票数 0

我正尝试在nodewebkit中使用sails.io.js

我使用下面的代码行设置我的sails服务器的url:

代码语言:javascript
复制
io.sails.url = "http://localhost:1337";

我想知道socket连接是否成功,这样如果有网络问题,我就可以提醒用户。

我目前使用的是1000毫秒的timeout,检查套接字连接是否建立:

代码语言:javascript
复制
$timeout(function () {
  if(io.socket.socket.connected)
     socketConnected = true;
  else
     socketConnected = false;
}, 1000);    

如果我不使用超时,它就会变成异步的,上面的函数会先被执行,而不是套接字连接。

有没有办法在不使用timeout的情况下知道套接字连接是否建立?有什么想法吗?

非常感谢

EN

回答 1

Stack Overflow用户

发布于 2015-02-04 00:55:32

您可以使用connect事件确定建立套接字连接的时间:

代码语言:javascript
复制
io.socket.on('connect', function() {...});

但是你仍然需要一个超时,因为你要检查一个连接is...timing是否超时了!

代码语言:javascript
复制
var socketTimeout = $timeout(function () {alert('socket timed out!');}, 5000);
io.socket.on('connect', function() {$timeout.cancel(socketTimeout);})
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28297792

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档