Socket.IO

介绍:

使用流行的Web应用程序堆栈(如LAMP(PHP))编写聊天应用程序一直非常困难。它涉及轮询服务器以进行更改,跟踪时间戳,并且它比它应该慢得多。

套接字传统上是大多数实时聊天系统所围绕的解决方案,在客户端和服务器之间提供双向通信通道。

这意味着服务器可以消息送到客户端。每当您编写聊天消息时,其想法是服务器将获取它并将其推送到所有其他连接的客户端

确定下载了node 

使用Node.JS Web框架express

npm i --save express@4.15.2

let app=require('express') ();
let http=require('http').Server(app);
app.get('/',(req,res)=>{
    res.send('<h1>hello word</h1>')

})
http.listen(3000,()=>{
console.log('success')
})

启动

还可以用res.sendFile(__ dirname + '/ index.html');启动html文件

集成Socket.IO

socket.io我们会自动为客户服务,所以现在我们只需要安装一个模块:

npm install --save socket.io
var app = require('express')(); 
var http = require('http').Server(app); 
var io = require('socket.io')(http);

app.get('/',function(req,res) { 
  res.sendFile(__ dirname + '/ index.html'); 
});

io.on('connection',function(socket) { console .log('a user connected'); });
  


http.listen(3000,function() { console .log('listen on *:3000'); });

io.emit 发出事件

io.emit('某事件',{ for:'everyone' });

除了某个套接字以外的所有人发送消息,我们有以下broadcast

io.on('connection',function(socket) { 
  socket.broadcast.emit('hi'); 
});

将消息发送给所有人,包括发件人。

io.on('connection',function(socket) { 
  socket.on('chat message',function(msg) { 
    io.emit('chat message',msg); 
  }); 
});
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值