2013-01-15 240 views
1

我有一个(的WebRTC)Web应用程序在三个选项卡上运行:谁关闭了浏览器选项卡?

  • 选项卡1个复位数据库(删除任何现有数据,重新创建初始数据集)
  • 标签2个作为客户端#1 ,发送异步请求到服务器
  • 标签3只充当客户机#2,发送异步请求到服务器

我已经注意到的是,如果我重装选项卡1,一个或两个其他的选项卡会自行关闭(如从中,从Chr中的选项卡列表中移除) OME)。我向IRC询问Chrome开发者,他们坚持认为Chrome会打印“Aw snap!”在标签崩溃的情况下,但不会将其从标签列表中删除。我很确定我自己的代码没有关闭页面。

我怎样才能找出什么/谁关闭标签?

回答

0

我觉得智障。

因此,调查此问题的几天后,我发现我的代码在发生网络错误时调用了一个函数,并且此函数调用了close()。而不是解决我的班'close()方法,它解决了,而是window.close()。猜猜接下来发生了什么? :)该标签关闭。

是什么让这个问题特别困难的是两个特定铬的错误:

简而言之:当它不应该window.close()作品,当它失败这样静静地做。

无论如何,我认为这件事情是封闭的。我希望这有助于他人避免在将来犯同样的错误。

0

我对JavaScript或Chrome不太了解,但最近我一直在做一些套接字编程,如果服务器出现故障,客户端通常会崩溃,除非他们意识到服务器丢弃了连接并处理该连接尝试/ catch语句)。我的建议是确保您的客户能够处理服务器辍学。

+1

我从来没有见过未捕获的异常导致选项卡关闭。 – Gili

相关问题