我的服务器端代码如下:为什么我的浏览器无法连接到nodejs socket.io服务器?
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;
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);
}
首先,我运行服务器“节点server.js”,它的确定。当我运行cient代码时,浏览器说它不能连接到'
',为什么? 客户端是否也必须用socket.io写入?http://127.0.0.1:1000
嗨,我知道客户可以这样写。但我想知道是否可以在不使用socket.io的情况下编写客户端。 – slee
我也不知道。也许你应该跟踪socket.io客户端的源代码并理解它的协议。 –
为什么你想连接到没有socket.io客户端的服务器?如果您只想使用webscoket进行传输,您可以在服务器上使用以下配置:'io.set('transports',['websocket']);'。 –