2013-10-16 130 views
1

我很难在客户端访问socket.io。 虽然搜索的问题,我发现下面的符号:在客户端无法获取socket.io

<script src="socket.io.js"></script> 
<script src="/socket-lib/socket.io.js"></script> 
<script src="/socket.io/socket.io.jss"></script> 
<script src="http://localhost:80/socket.io/socket.io.jss"></script> 

这些都不似乎做的伎俩。当我致电以下的在我的客户端HTML文件

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

我总是得到错误:

ReferenceError: io is not defined [Break On This Error] var socket = 
io.connect('http://localhost'); 

不应该在该作品“自动地”?

PS:这里是我的服务器端脚本的样子:

var app = require('http').createServer(handler); 
var io = require('socket.io').listen(app); 
var fs = require('fs'); 

app.listen(80); 

function handler (req, res) { 
    fs.readFile(__dirname + '/temp.html', 
    function (err, data) { 
    if (err) { 
     res.writeHead(500); 
     return res.end('Error loading temp.html'); 
    } 
    res.writeHead(200); 
    res.end(data); 
    }); 
} 
}); 
+0

检查浏览器的控制台。浏览器是否真的从该URI加载JavaScript文件? –

+0

你写了“/socket.io/socket.io.jss”而不是.js –

回答

2

它应该是:

<script src="/socket.io/socket.io.js"></script> 
+0

OMG!复制和粘贴再次击中。谢谢! – Boris