客户端的Socket.IO

时间:2015-03-03 14:16:44

标签: node.js express socket.io

我正在创建一个nodejs + express + socket.io服务器。

我还通过自耕农为我的前端应用创建了一个脚手架。

socket.io服务器在端口3000上,而我的yeoman脚手架http服务器在9000上。

我已设法使用

从socket.io服务器检索socket.io.js
<script type="text/javascript" src="http://localhost:3000/socket.io/socket.io.js"></script>

但是我有这个错误:

GET http://localhost:9000/socket.io/?EIO=3&transport=polling&t=1425392110184-42 404 (Not Found) 

为什么socket.io.js在端口9000上轮询? 此外,我怎样才能改变它,以便它在3000上进行轮询呢?

2 个答案:

答案 0 :(得分:0)

socket.io客户端采用选项URL参数。如果未指定,它将使用当前文档来源进行连接。这意味着如果HTML文档的网址为http://localhost:9000,则它将连接到http://localhost:9000。连接时指定它:

var socket = io('http://localhost:3000');

而不是

var socket = io();

答案 1 :(得分:0)

好的,我通过将socket.io的url作为参数传递给io()函数来解决它。

var socket = io('http://localhost:3000');