0

最初に少しコードを書きます。これはサーバーコードです:

var http = require('http');
var url = require('url');
var fs = require('fs');
var io = require('socket.io');

var server = http.createServer(function(req, res){
var path = url.parse(req.url).pathname;

switch(path){
    case '/':
    res.writeHead(200, {'Content-Type': 'text/html'});
    res.end('<!DOCTYPE html><html><head><title>Learn socket.io</title><meta charset="UTF-8"></head><body><h1>OK</h1></body></html>');
    break;
case '/socket.html':
    fs.readFile(__dirname + path, 'UTF-8', function(error, data){
        if(error){
        res.writeHead(404);
        res.end('<!DOCTYPE html><html><head><title>Learn socket.io</title><meta charset="UTF-8"></head><body><h1>OEPS!!! 404 error</h1></body></html>');
    }else{
        res.writeHead(200, {'Content-Type': 'text/html; charset=utf-8'});
        res.end(data, 'UTF-8');
    }
    });
    break;
default:
    res.writeHead(404);
    res.end('<!DOCTYPE html><html><head><title>Learn        socket.io</title><meta charset="UTF-8"></head><body><h1>OEPS!!! 404 error</h1></body></html>');
    }
});
server.listen(8001);
io.listen(server);
//io.set('log level', 1);
//io.sockets.on('connection', function(socket){
//socket.emit('message', {'content':'Server sending connection event'});
//});
console.log('Serveur started on 8001');

そして、socket.html ページ:

<html>
    <head>
    <title>File uploader</title>
    <script src="http://localhost:8001/socket.io/socket.io.js"></script>
    <script>
        var socket = io.connect();

    socket.on('connecting', function(){
        console.log('Socket fire connecting event.');
    });

    socket.on('connect', function(){
        console.log('Socket fire connect event.');
    });

    socket.on('disconnect', function(){
        console.log('Socket fire disconnect event.');
    });

    socket.on('message', function(data){ //message, callback
        console.log(data.content);
    });

    socket.on('connect_failed', function(){
        console.log('socket could not connect.');
    });

    socket.on('error', function(){
        console.log('An error occured.');
    });

    </script>
    </head>
    <body>

    <h1>This is our new socket.html file</h1>
    </body>
</html>

ここには特別なことは何もありません。このことを学ぶためのコードだけです。すべて問題ありませんが、「io.set('log level', 1);」のコメントを外すと、または io.socket.on...、サーバーに接続できなくなりました。さらに、コマンド プロンプト (Windows...) で 'info -' または 'debug -' を取得しましたが、それ以上のものはなく、別のブログで見たものに従うと、次のようなものが必要です: info - socket.io started, debug - 提供される静的コンテンツ /socket.io.js

誰かが私のコードで何が間違っていると言うことができますか?

前もってありがとう、ミシェル

4

1 に答える 1