2012-08-12 26 views
1
var app = require('http').createServer(handler) 
    , io = require('socket.io').listen(app) 
    , fs = require('fs') 

app.listen(8080); 

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

    res.writeHead(200); 
    res.end(data); 
    }); 
} 

io.sockets.on('connection', function (socket) { 

    socket.on('sendchat', function (data) { 

     io.sockets.emit('updatechat', data); 

    }); 
}); 

这是我的websocket服务器(node.js + socket.io)。我了解除处理函数外的所有内容。有人可以解释它做了什么吗? index.html做了什么,它在哪里?在我的客户端,我使用一个名为完全不同的剃须刀视图,它无论如何都可以工作。socket.io服务器,处理函数

感谢

回答

2

handler()功能时,一个新的请求到来时调用。它可以让你从Socket.IO使用相同的HTTP服务器服务于其他资源。

index.html只是一个示例文件,您可以使用它来测试您的页面。

+0

好的,谢谢你解释 – Johan 2012-08-13 08:05:09