我试着让socket.io正常工作,但现在在Chrome中我得到了错误:
未捕获ReferenceError:未定义
client.php:9Uncaught ReferenceError: io is not defined
我更改了包含socket.io.js文件的方式,因为它不存在于其他地方:
<script src="/node_modules/socket.io/lib/socket.io.js"></script>
如果我尝试
<script src="/socket.io/socket.io.js"></script>
I get:无法加载资源:服务器响应状态为404 (未找到)
这是Ubuntu上的最新版本
我使用http://socket.io/中的服务器代码在与client.php相同的文件夹中工作,该文件夹名为server.js,只是修改了端口。
发布于 2011-11-20 22:30:35
如果你的脚本不是来自你的not服务器,这将不起作用:
<script src="/socket.io/socket.io.js"></script>
您必须明确声明主机和端口:
<script src="http://localhost:<port>/socket.io/socket.io.js"></script>
发布于 2011-11-21 10:07:14
你在服务器上运行node.js和PHP吗?
有两个"socket.io“包,一个服务器和一个客户端。您正在尝试在浏览器中加载服务器一(/node_modules/socket.io/lib/socket.io.js
)。您需要的脚本名为socket.io-client,您可以在https://raw.github.com/LearnBoost/socket.io-client/master/socket.io-client.js中找到它
发生的情况是,当您在端口80 上运行节点时,socket.io会自动从端口80为(客户机)文件提供服务。在您的示例中,Apache已经位于端口80,因此您需要手动提供来自该端口的文件。
发布于 2013-01-04 07:21:39
您的库在客户端浏览器代码中包含(/socket.io/socket.io.js
)可能是可以的。但是,您可能指向了错误的socket.io.js
副本如果您使用(npm install socket.io
)安装了socket.io
,那么您可能需要在以下目录中查找socket.io.js
的客户端版本
C:\Program Files (x86)\nodejs\node_modules\socket.io\node_modules\socket.io-client\dist\socket.io.js
如果它在那里,那么您可能希望将该模块复制到您的web发布目录,或者作为替代方案,您可以更改虚拟目录所指向的物理路径。
https://stackoverflow.com/questions/8202053
复制相似问题