我正在尝试创建一个angularjs应用程序,独立于运行sailsjs的node.js服务器。
我想将socket.io用于此应用程序,显然我需要从服务器获取socket.io.js文件。
在我的客户端中,我使用以下命令在我的Index.html文件中加载js文件:
<script src="http://localhost:1337/socket.io/socket.io.js"></script>
但是,由于握手错误,风帆不会传送文件。
无论如何从服务器获取文件?
由于
答案 0 :(得分:0)
您没有与服务器的会话,所以当包含socket.io.js时,没有会话cookie供它使用,握手失败。您需要事先向服务器发出成功请求以打开会话。这需要是一个CORS请求,因为您的服务器及其服务器位于不同的域上。需要使用此处说明的方法在服务器端启用CORS:https://github.com/balderdashy/sails-wiki/blob/0.9/config.routes.md#cors-cross-origin-resource-sharing
答案 1 :(得分:0)
如果您不需要node.js服务器,为什么不将socket.io.js文件复制到Web服务器,并从那里获取它?
答案 2 :(得分:0)
简单的方法是通过套接字与Sails通信的Javascript Client SDK。
以下是github上的官方项目:https://github.com/balderdashy/sails.io.js