Javascript Socket.io-服务器停机处理

Javascript Socket.io-服务器停机处理,javascript,node.js,sockets,socket.io,Javascript,Node.js,Sockets,Socket.io,我正在尝试编写一个简单的应用程序,在服务器端使用socket.io和node.js提供数据。我想通知用户,如果服务器关闭,例如,服务器向客户端提供网页,在任何刷新服务器停止之前。目前,它会导致浏览器出现以下错误: GET http://localhost:8080/socket.io/?EIO=2&transport=polling&t=1409325689935-6 net::ERR_CONNECTION_REFUSED 我无法使用套接字捕获该事件。关于“错误”。。。事件,

我正在尝试编写一个简单的应用程序,在服务器端使用socket.io和node.js提供数据。我想通知用户,如果服务器关闭,例如,服务器向客户端提供网页,在任何刷新服务器停止之前。目前,它会导致浏览器出现以下错误:

GET http://localhost:8080/socket.io/?EIO=2&transport=polling&t=1409325689935-6 net::ERR_CONNECTION_REFUSED 
我无法使用套接字捕获该事件。关于“错误”。。。事件,只要客户端无法连接到服务器,我就会显示一些消息。任何想法都将不胜感激:下面提供了初始化套接字的代码:

socket = io.connect(document.domain, {
    'sync disconnect on unload' : false
});

难道你不能通过这样做来检查服务器是否为你提供了.js文件吗

<script type="text/javascript" onload="loaded()" src="get_socket.js"></script>

function loaded(){

//this will only execute if the server is up

}

我已经成功地将以下代码不仅用于socket.io,还用于您希望加载、执行或同时加载、执行的任何.js。请原谅我,因为我早就忘记了我最初从哪里得到这个,很可能就是这个网站

请注意,我只定制了loadAndExecute函数来处理无法通过回调加载文件的问题

var load,execute,loadAndExecute;
load=function(a,b,c){var d;d=document.createElement("script"),d.setAttribute("src",a),b!=null&&d.addEventListener("load",b),c!=null&&d.addEventListener("error",c),document.body.appendChild(d);return d},
execute=function(a){var b,c;typeof a=="function"?b="("+a+")();":b=a,c=document.createElement("script"),c.textContent=b,document.body.appendChild(c);return c},
loadAndExecute=function(a,b,c){return load(a,function(){return execute(b)},function(){return c();})};
用作:

loadAndExecute("domain.com:80/socket.io/socket.io.js", function() {
    //it loaded, put main code here
},
function(){
    //failed to load, put error display code here
});

希望这能帮助像它这样的人帮助我很多次。

我想截获提供的错误,这样客户端控制台窗口就不会出现任何错误-但是,使用上述解决方案不会阻止它们显示-感谢您这么快地回复: