在最近视频会议的具体实施中,碰到一个问题,当用户网络情况与服务器连接的速度比较慢时,需要提醒用户,当前带宽的情况下,会影响音视频通话质量,只是一个小的用户体验改善的额提醒而已,基本思路有二:
- 用Ping命令,看包返回的情况进行计算,这种方式可能需要客户端安装JRE环境
- 用简单方式,从Faqee服务器上拉取一张小图片,然后根据IMG标签的onload事件进行简单计算
其中第二种方式的Javascript代码如下:
function getbandwidth() { var starttime = new Date(); var img = new Image; img.onload = function(){ var filesize = 20; //measured in KB var endtime = new Date(); if((endtime - starttime) == 0){ return; } var speed = Math.round(filesize*1000)/(endtime - starttime); alert(speed); }; img.src = "http://www.faqee.com/css/webtop_02.png?id=一个随机数避免缓存"; }
当用户速度低于100KB/S时,自动提醒用户,如下:

大家有关于好的建议希望一起来讨论下,在Web方式下与服务器保持的速度测试