Node.js就不介绍了(如果你写JavaScript,就应该知道它)
以前看到过很多关于node.js的文章,但一直没有尝试去搭建node.js的环境。这里有一篇文章叫“websocket与node.js的完美结合”
看完那篇文章,依旧没有什么头绪,决定还是step by step…
在笔记本上跑东西就是比较吃力(况且还是低配置~),就懒得去开虚拟机了,决定直接用xp。
关于windows下安装node.js,我参考的一这篇文章:在Windows下试验Node.js,搭建环境的步骤:
1、下载、解压
2、测试node.js
我下载该文档存放于D盘的QMDownload中,如图所示:
至于每个目录的文件内容暂时可不用管,重点是能让node.js能正常工作。我弄了一个test.js,然后在dos下进入该目录,测试node.js是否能正常工作。
node.js中的内容为:
console.log("Hello oschina!");
测试:
可以再写个例子:
);
环境应该差不多了。下面要开始用node.js写socketServer了
在谷歌里搜索了很多资料,本想基于一位老外写的模块进行测试,发现跑不起来。
他的项目:Basic-Node.js-Websocket-Chat
启动的时候报找不到utils模块,折腾了半天,也没能跑起来,果断放弃了,继续寻找…
后来找到这篇文章:Node.js and HTML5 Web Sockets,在里面找到别人写好的模块:node.ws.js
它的主页有例子,告诉使用者如何使用它的模块。
);
});
}).listen(8080);
我下载了ws.js,然后将它放在node.js解压目录下的lib目录中D:\QMDownload\nodejs-0.4.6\lib\ws.js
然后基于这个模块写socket server(socket.js--存放于D:\QMDownload\nodejs-0.4.6目录下):
break;
}
}
});
});
server.listen(8082);
在这里我只是加了一个数组(socket池的概念),因为在测试中,我发现socket.write是可以反馈消息给客户端,但只是那个发送消息过来的客户端,如果要想对消息进行广播(broadcast),我尝试着这里去使用,但并不知道这样写是否有问题(暂时忽略吧~ 等以后有精力再仔细研究了)
接下来是前台页面了,这个相对简单一些,逻辑部分并不多,需要解决的事情:
1、判断当前浏览器是否支持:WebSocket
2、使用WebSocket中的几个常用方法:onopen、onclose、onmessage、send处于一下消息
HTML的源码:
>
如果使用flash进行socket进行连接,那么socket server先要返回一个security policy的字符串(解决安全沙箱的问题)
文章中使用的文件打包下载(包含ws.js、socket.js)>>