我的服务器端代码如下:
var app = require('http').createServer(handler)
, io = require('socket.io').listen(app)
app.listen(1000);
function handler (req, res) {
function (err, data) {
res.writeHead(200);
res.end(data);
});
}
io.sockets.on('connection', function (socket) {
socket.emit('message', { hello: 'world' });
socket.on('my other event', function (data) {
console.log(data);
});
});
var app = require('http').createServer(handler)
, io = require('socket.io').listen(app)
app.listen(1000);
function handler (req, res) {
function (err, data) {
res.writeHead(200);
res.end(data);
});
}
io.sockets.on('connection', function (socket) {
socket.emit('message', { hello: 'world' });
socket.on('my other event', function (data) {
console.log(data);
});
});
我的浏览器端代码如下:
window.WebSocket = window.WebSocket || window.MozWebSocket;
首先我使用'node server.js'运行服务器,没关系。当我运行客户端代码时,浏览器说它无法连接到“if (!window.WebSocket){
alert("WebSocket not supported by this browser");
return;
}
var websocket = new WebSocket("ws://127.0.0.1:1000/");
websocket.onmessage = function(evt){
var data = evt.data;
console.log(data);
}
if (!window.WebSocket){
alert("WebSocket not supported by this browser");
return;
}
var websocket = new WebSocket("ws://127.0.0.1:1000/");
websocket.onmessage = function(evt){
var data = evt.data;
console.log(data);
}
”,为什么?
客户端是否也必须使用socket.io编写?
答案 0 :(得分:1)
是的,您必须使用正确的socket.io协议,查看socket.io-client以及文档中的示例。
答案 1 :(得分:0)
您应该使用socket.io客户端连接到服务器,如下所示:
<script src="/socket.io/socket.io.js"></script>
<script>
var socket = io.connect('http://localhost:3000');
</script>
您可能想要结帐我的Scalable Socket.IO Sample。