2

我正在尝试制作一个独立于运行sailsjs 的node.js 服务器的angularjs 应用程序。

我想为这个应用程序使用 socket.io,显然我需要从服务器获取 socket.io.js 文件。

在我的客户端中,我使用以下方法将 js 文件加载到我的 Index.html 文件中:

<script src="http://localhost:1337/socket.io/socket.io.js"></script>

然而,由于握手错误,sails 没有提供文件。

无论如何从服务器获取文件?

谢谢

4

3 回答 3

0

如果您不需要 node.js 服务器,为什么不直接将 socket.io.js 文件复制到 Web 服务器,然后从那里获取呢?

于 2013-08-26T08:07:08.907 回答
0

握手错误在这里解释:https ://github.com/balderdashy/sails/wiki/sockets#500-error-handshake-error-returned-from-socketio-request

您没有与服务器的会话,因此当包含 socket.io.js 时,没有可供它使用的会话 cookie,并且握手失败。您需要事先向服务器发出成功的请求以打开会话。这需要是一个 CORS 请求,因为您的服务器和它们的服务器位于不同的域中。需要使用此处说明的方法在服务器端启用 CORS:https ://github.com/balderdashy/sails-wiki/blob/0.9/config.routes.md#cors-cross-origin-resource-sharing

于 2013-08-23T15:58:32.107 回答
0

最简单的方法是使用 Javascript Client SDK 通过套接字与 Sails 进行通信。

这是github上的官方项目:https ://github.com/balderdashy/sails.io.js

于 2015-04-19T16:56:36.543 回答