【问题标题】:nodejs where to start?nodejs从哪里开始?
【发布时间】:2010-10-30 21:15:38
【问题描述】:

我已经安装了 nodejs 并运行了几个简单的示例,例如在端口上打开服务器并侦听该端口。

但是,我仍然无法将 nodejs 与 Web 开发联系起来。所以为了学习和实现nodejs,我正在考虑使用rails和nodejs制作井字游戏。这可能吗?

我正在设想一个多人井字游戏,如果第 1 个人选择了某些东西,第 2 个人会自动在他们的浏览器上看到它。

我应该从哪里开始?

我在 Rails 方面有经验,但在 nodejs 或 nodejs + rails 方面没有经验。

【问题讨论】:

    标签: node.js


    【解决方案1】:

    首先尝试实现基本的应用程序并感受一下框架。例如网上有几个教程:

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

    http://nodejs.org/的文档

    http://howtonode.org/

    还有一个 70 分钟的 peepcode 截屏视频,费用为 9 美元

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

    github上也有几个app,大家看看。阅读代码永远是最好的。

    【讨论】:

      【解决方案2】:

      我建议查看项目 Socket.IO 和 Socket.IO-node。如果可用,它会使用 HTML5 WebSockets,并根据需要自动优雅地(无需干预)回退到 Flash 套接字和 XHR 轮询

      这是下载文件的脚本:

      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
      

      这是 server.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');
      }
      
      });
      

      使用sudo node server.js运行上述服务器

      这是要在浏览器中运行的 index.html:

      <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>
      

      【讨论】:

        【解决方案3】:

        我发现The Node Beginner Book 很有帮助。但是,对于您想要做的事情来说,这可能太基础了。

        【讨论】:

          【解决方案4】:

          我发现 hexes 示例作为使用 nodejs 的实时游戏的参考很有帮助。

          https://github.com/joyent/node-camp/tree/master/hexes

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2023-04-09
            • 2011-03-23
            • 2011-12-14
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多