2010-10-30 18 views
14

He instalado nodejs y ejecuté algunos ejemplos simples, como abrir un servidor en un puerto y escuchar en ese puerto.nodejs por dónde empezar?

Sin embargo, todavía no puedo relacionar nodejs con el desarrollo web. entonces para aprender e implementar nodejs estoy pensando en hacer tic tac toe usando rails y nodejs. es posible?

Imagino un juego multijugador de tres en raya en el que si la persona 1 selecciona algo, la persona 2 automáticamente lo ve en su navegador.

¿dónde debería empezar con algo como esto?

Tengo experiencia en rieles pero ninguno en nodejs o nodejs + rails.

Respuesta

6

Primero Intente implementar la aplicación básica y familiarícese con el marco. Hay varios tutoriales en línea, por ejemplo:

http://net.tutsplus.com/tutorials/javascript-ajax/learning-serverside-javascript-with-node-js/

Documentación en http://nodejs.org/

http://howtonode.org/

También hay un 70 min screencast por PeepCode que cuesta 9 $

https://peepcode.com/products/nodejs-i

También hay varias aplicaciones en github, que miras. El código de lectura siempre es el mejor.

2

Recomiendo mirar el proyecto Socket.IO y Socket.IO-node. Utiliza HTML5 WebSockets si está disponible, y cae de nuevo de forma automática y con gracia (sin intervención requerida) a las tomas de Flash y XHR-sondeo según sea necesario

Aquí hay un script para descargar los archivos:

mkdir socket.io 
cd socket.io 
git clone https://github.com/LearnBoost/Socket.IO.git --recursive 
git clone https://github.com/LearnBoost/Socket.IO-node.git --recursive 

Aquí está el servidor. js:

var http=require('http'); 
var url=require('url'); 
var fs=require('fs'); 
var sys=require('sys'); 
var io=require('./socket.io/Socket.IO-node'); //adjust path as necessary... 

var server=http.createServer(function(req,res){ 
    res.writeHead(200,{'Content-Type':'text/html'}); 
    res.write('Hello world'); 
    res.end(); 
}); 
server.listen(8000); 

var socket=io.listen(server); 

socket.on('connection', function(client){ 
    onConnection(client); 
    client.on('message', function(){ 
    onMessage(); 
    }) 
    client.on('disconnect', function(){ 
    onDisconnect(); 
    }) 
}); 
function onConnection(client){ 
    console.log('connection'); 
    //client.connected; //tests if connected 
    //client.send("message"); 
    //client.broadcast("message"); //send to all other conns 
} 
function onMessage(){ 
    console.log('message'); 
} 
function onDisconnect(){ 
    console.log('disconnect'); 
} 

}); 

ejecutar el servidor anterior con sudo node server.js

Y aquí es su index.html a ser ejecutado en un bro wser:

<script src="./socket.io/Socket.IO/socket.io.js" type="text/javascript" charset="utf-8"></script> <!--Adjust path as necessary--> 
<script> 
var host="localhost"; 
var port=8000; 

var socket=new io.Socket(host,{'port':port}); 

socket.connect(); 
socket.on('connect',function(){onConnect();}) 
socket.on('message',function(data){onMessage(data);}) 
socket.on('disconnect',function(){onDisconnect();}); 

function onConnect(){ 
    ///alert('connect'); 
} 
function onMessage(data){ 
    //alert('message'); 
} 
function onDisconnect(){ 
    //alert('disconnect'); 
    socket.connect(); 
} 

</script> 
Cuestiones relacionadas