直播平台在线人数功能
时间:2022-07-23
本文章向大家介绍直播平台在线人数功能,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
最近在做直播平台,需要实现在线人数的显示 在线观看直播的人数使用websocket感觉很好,当有人进入直播平台,后台触发人数加1,当有人退出平台例如关闭浏览器,后台会触发断开连接方法,人数减1。 使用socket.io
1.websocket服务端
1)引入包
var app = require('http').createServer()
var io = require('socket.io')(app)
2)定义在线人数的全局变量
var count = 0
3)设置websocket服务端口
app.listen(5000)
4)开启
io.on('connection', function(socket) {
5)当有人进入页面,就会与websocket服务器建立通信 就会触发人数加1
count++;
console.log("当前接入" + count + "人")
6)我们人数发送给订阅了”users“的客户端
socket.emit('users', { peoNum: count })
//当有数据改变时,会自动将人数广播到订阅users的客户端
socket.broadcast.emit('users', { peoNum: count });
7)当有人断开连接,就会触发断开方法,人数减1
socket.on('disconnect', function() {
--count;
console.log("当前接入" + count + "人")
socket.broadcast.emit('users', { peoNum: count });
});
})
2.websocket客户端
1)引入包
<script src="http://cdn.bootcss.com/socket.io/2.0.3/socket.io.js"></script>
2)人数显示
<h3>当前在线人数:<span id="allpeople"></span> </h3>
3)连接websocket服务器,订阅users信息,当接收到服务端广播的人数信息,就会将其显示到页面
var socket = io('localhost:5000')
socket.on('users', function(data) {
console.log(data)
document.getElementById('allpeople').innerHTML = data.peoNum
socket.on('disconnect', function() {
console.log("与服务断开");
});
})
- 金融科技新常态,未来开启拼“硬实力”阶段
- Mono 3 的默认Gc是Sgen
- Linux下Redis主从复制以及SSDB主主复制环境部署记录
- 单元测试同时支持 NUnit/MSTest
- log4net快速上手
- MySQL高可用方案-PXC环境部署记录
- Redis主从复制下的工作原理梳理
- Linux系统下常用的数据备份方法
- K2 的Workspace 遭遇400 RequestLength 错误修复
- 从零开始学人工智能-Python·决策树(三)·节点
- .net程序员使用Oracle新手上路指南
- python的函数(二):作用域
- 在win2008 r2中安装windows phone 7开发工具
- TFS2008 + Windows2003 + Sql2005 安装注意事项
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- CentOS6.5系统简单安装与配置Nginx服务器的方法
- 详解linux 摄像头驱动编写
- Ubuntu16.04搭建NFS 文件共享服务器的方法
- 详解linux pwm驱动编写
- Ubuntu 16.04 LTS系统里中文txt文件打开的问题解决
- linux nand flash驱动编写
- 在Linux中使用Vundle管理Vim插件的方法
- 详解linux添加硬盘分区挂载教程
- CentoS6.5环境下redis4.0.1(stable)安装和主从复制配置方法
- 详解linux dma驱动编写
- CentOS6.5环境安装nginx服务器及负载均衡配置操作详解
- 详解linux 驱动编写(sd卡驱动)
- Centos 6.9环境下创建用户及删除用户的方法
- 详解linux驱动编写(入门)
- Ubuntu使用国内源出现Hash Sum mismatch错误的解决