使用socket.io和nodejs搭建websocket服务器端

socket.io不仅可以搭建客户端的websocket服务,而且支持nodejs服务器端的websocket。

下面让我来介绍一下怎么安装配置nodejs.

进入http://nodejs.org/#download下载msi文件。一直点next安装。最后文件会自动安装在C:nodejs目录下。

安装完成后,会自动配置环境环境变量。如果没有自动配置,自己手动在path处加上 ;C:nodejs。

安装完成后,需要配置npm来管理node.js的模块。

在window下安装npm需要安装git。

安装完git后,打开gitbush。执行下面几步:
   [ 其他 ] 运行代码    下载代码
<script>
git config --system http.sslcainfo /bin/curl-ca-bundle.crt
  
git clone --recursive git://github.com/isaacs/npm.git
  
cd npm
  
node cli.js install npm -gf
</script>
第一个是设置不会有任何提示,第二步会到github上下载npm会有下载文件和进度,第四步是安装npm到node.js会复制几个文件cmd文件和mode_modules文件夹到nodejs目录。

这样就配置好了npm。

如果需要安装什么模块直接输入npm install ***。

没有npm的或者windows用户可以使用github下载socket.io并且放入到node_modules文件夹中,具体配置可以参考文章:《nodejs教程:配置nodejs.exe的windows目录结构》

nodejs安装socket.io

使用node插件管理包,运行下面的命令就可以安装成功socket.io
   [ 其他 ] 运行代码    下载代码
<script>
npm install socket.io
</script>
用socket.io 实现的一个例子

客户端代码:
   [ 其他 ] 运行代码    下载代码
<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="https://www.51qianduan.com/" />
<title>51前端</title>
<script src="../js/socket.io.client.js"></script> 
<script type="text/javascript"> 
function doit(){ 
  var socket = io.connect('http://localhost'); 
  socket.on('news', function (data) {//接收到服务器发送过来的名为'new'的数据 
    console.log(data.hello);//data为应服务器发送过来的数据。 
    socket.emit('my new event', { my:'new data' });//向服务器发送数据,实现双向数据传输 
  }); 
  
  socket.on('other',function(data){//接收另一个名为'other'数据, 
    console.log(data.hello); 
    socket.emit('event1', { my:'other data' }); 
  }); 
} 
window.onload=function(){
  var obt=document.getElementById("btn");
  obt.onclick=function(){
    doit()
  }
}
</script> 
</head> 
<body> 
<button id='btn'>click me</button> 
</body> 
</html>
socket.io.client.js可以https://github.com/LearnBoost/socket.io-client下载到本地,在<script src="..">指向本机的js库。

服务器用nodejs实现

server2.js
   [ 其他 ] 运行代码    下载代码
<script>
var http= require('http'), io= require('socket.io'), express= require('express'); 
var app = express.createServer(), io = io.listen(app); 
app.listen(80); 
io.sockets.on('connection', function (socket) { 
 //监听,一旦客户端连接上,即发送数据,第一个参数'new'为数据名,第二个参数既为数据 
 socket.emit('news', { hello: 'world' });
 //捕获客户端发送名为'my other event'的数据 
 socket.on('my other event', function (data) {
   console.log(data.my); 
 }); 
 socket.emit('other', { hello: 'other world' });//发送另一个数据 
 socket.on('evnet1', function (data) {//捕获另外一个数据 
  console.log(data.my); 
 }); 
});
</script>

代码描述:socket.io和node.js搭建通信系统。socket.io和node.js搭建通信系统代码下载



112 149



用户评论
大牛,别默默的看了,快登录帮我点评一下吧!:)      登录 | 注册



×
×
51前端

注册

×
绑定手机

请绑定手机号,在继续操作

×
单次下载支付

应付金额:279

支付完成后,回到下载页面,在进行下载

官方QQ群
意见反馈
qq群

扫描上面二维码加微信群

官方QQ群

jQuery/js讨论群
群号:642649996
Css3+Html5讨论群
群号:322131262

加群请备注:从官网了解到