Skip to content

frontender/online

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

online

用于统计页面实时在线人数的前后端,使用node实现。 本统计基于"频道"的概念,一个页面可任意加入多个频道(比如区别统计全站在线数和页面在线数)。

服务端

配置

修改server/config.js

见文件注释

启动

node server/server.js

本服务端没有内置加密连接配置,如果需要使用加密连接,请使用其它支持加密连接的服务器程序转发连接,或者使用支持加密连接的CDN。

浏览器端

用例

在启动服务端之后在浏览器中打开client/demo.html查看。

使用

  1. 在浏览器中引用client/online.babel.jsclient/online.js(本服务端支持client目录下的静态文件输出)。
  2. 在需要统计在线人数的页面上添加代码
//示例代码
var ol=new Online('wss://online服务器地址:端口/online');//新建Online对象
ol.enter('频道1').enter('频道2').enter('频道3');//可加入多个频道
//频道名建议使用可以独立标识页面的值,比如页面id,不建议使用页面url。
ol.onOnlineChange=function(msg){//频道内在线数量变化时
	//msg.g:产生变化的频道名称
	//msg.u:频道中在线用户数
	//msg.c:频道中存在的连接数
	//做一些事情显示以上的值
}

非加密连接使用ws://前缀,加密连接使用wss://前缀

类说明

Class:client/Online

方法

enter(name)

加入一个频道

  • name : 频道名

此方法返回此对象,支持链式调用。

var ol=new Online(...);
ol.enter('频道1').enter('频道2').enter('频道3');

leave(name)

离开一个频道

  • name : 频道名

此方法返回此对象,支持链式调用。

leaveAll()

离开所有频道

connet([addr])

连接服务器

  • addr(可选) : 指定服务器地址,不指定则使用addr属性中的地址

此方法返回此对象,支持链式调用。

close()

关闭在线对象

属性

  • [getter]opened:(bool)返回这个在线对象是否已经打开连接

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published