简介
速率
宽带
b/s(bps)
延迟/时延
测速
判断用户网络类型, 进行分流。
网络测试:
rtt, 往返时延
图片资源测速
var image = new Image()
image.src = 'pic.png/400kb'; //
var startTime = Date.now()
image.onload = function () {
var endTime = Date.now()
var netSpeed = 400 / (endTime - startTime); // bps
}
多普勒测速
判断网络类型
方式1:
navigator.connection
{
downlink: 8.25
effectiveType: "4g"
onchange: null
rtt: 100
saveData: false
}
performance.timing
{
connectEnd: 1589631800135
connectStart: 1589631800003
domComplete: 1589631800649
domContentLoadedEventEnd: 1589631800463
domContentLoadedEventStart: 1589631800463
domInteractive: 1589631800463
domLoading: 1589631800253
domainLookupEnd: 1589631800003
domainLookupStart: 1589631800003
fetchStart: 1589631799972
loadEventEnd: 1589631800649
loadEventStart: 1589631800649
navigationStart: 1589631799970
redirectEnd: 0
redirectStart: 0
requestStart: 1589631800135
responseEnd: 1589631800249
responseStart: 1589631800247
secureConnectionStart: 1589631800046
unloadEventEnd: 0
unloadEventStart: 0
}
方式2: UA, 不准确不推荐
navigator.userAgent
应用
- 上传
- 下载
- PING
- 丢包
- 抖动