Hãy chắc chắn rằng bạn đang chèn socket.io.js nộp vào mã khách hàng của bạn và sử dụng nó. Nếu bạn cố gắng tạo websocket của riêng mình ở phía máy khách, có thể bạn sẽ gặp sự cố.
Đỗ một cái gì đó như thế này cho máy chủ của bạn:
var app = require('express').createServer()
, io = require('socket.io').listen(app);
app.listen(80);
app.get('/', function (req, res) {
res.sendfile(__dirname + '/index.html');
});
io.sockets.on('connection', function (socket) {
socket.emit('news', { hello: 'world' });
socket.on('my other event', function (data) {
console.log(data);
});
});
và một cái gì đó như thế này cho các tập tin HTML bạn đang phục vụ:
<script src="/socket.io/socket.io.js"></script>
<script>
var socket = io.connect('http://localhost');
socket.on('news', function (data) {
console.log(data);
socket.emit('my other event', { my: 'data' });
});
</script>
Hãy chắc chắn rằng bạn đang phục vụ /socket.io/socket.io.js
từ dir webserver của bạn . Sau đó, tất cả những gì bạn phải làm là xem nhật ký bảng điều khiển của mình trong môi trường Nhà phát triển của trình duyệt web từ Tùy chọn hoặc với Firebug khi bạn truy cập trang.
bạn có đang sử dụng socket.io.js trên máy khách để kết nối với máy chủ không? – pkyeck
Bạn có thể đặt đoạn mã của mình ở đây (hoặc liên kết tới github) không? –
Bạn đang sử dụng phiên bản nào của Node.js và socket.io? – apose