dynamic连接到socket.io

我试图通过socket.io将浏览器连接到我的应用程序。

<script type="text/javascript" src="http://localhost:4000/socket.io/socket.io.js"></script> <script> var socket = io.connect('http://localhost:4000'); </script> 

用这个标准的方法一切正常。 现在我试图根据服务器的IP在“dynamic”中转换此连接,如下所示:

 <html> <head> var socket; function loadFile(filename){ var ip_server = location.host; var body = document.getElementsByTagName( 'body' )[0], fileref = document.createElement('script'); fileref.setAttribute("type","text/javascript"); fileref.setAttribute("src", "http://"+ip_server+"/"+filename); body.appendChild( fileref ); } </head> <body> <script type="text/javascript"> loadFile("socket.io/socket.io.js"); socket = io.connect('http://'+location.host); </script> </body> </html> 

但是firebug说ReferenceError:io没有socket = io.connect('http://'+location.host);

我该如何解决? 有一个简单的方法来做我在想什么? 谢谢

Socket.io与Node.js有着“神奇的”整合,这意味着更简单的事情将自动工作:

 <script src="/socket.io/socket.io.js"></script> var socket = io.connect(); 

这将find没有明确的主机或path的库和套接字。 它应该“只是工作”。