重置Socket.io客户端连接

时间:2015-09-03 19:24:02

标签: angularjs google-chrome-extension socket.io

我编写了一个使用Socket.io功能的Google Chrome扩展程序。更确切地说,它是一个带有angular-socket.io的AngularJS应用程序。

我允许用户在选项页面中设置socket.io服务器地址和端口。一切正常,直到用户想要更改地址,因为我不知道如何重置Socket.io连接。理想情况下,我想关闭以前的连接并重新连接新连接而不重新启动应用程序(请记住,它是Chrome扩展程序,我无法自行重启)。

所以我的问题是:如何重置Socket.io客户端连接并重新连接新的DSN

PS。我正在使用socket.io-client#1.3.6

1 个答案:

答案 0 :(得分:1)

您正在使用angular-socket.io,因此您将socket.io(带有给定配置)作为服务注入角度应用。假设您的服务名为 socketIOService ,您可以执行以下操作:

  • 使用socketIOService.disconnect();
  • 在客户端断开连接
  • 重新与socketIOService.connect(SERVER_IP, {'force new connection': true});
  • 联系