如何使用 Javascript 测量实时互联网速度?
How to measure real time internet speed using Javascript?
我正在尝试弄清楚如何使用 JavaScript 检测互联网下载和上传速度。
另一个 Whosebug 线程中使用虚拟下载文件发布的另一个解决方案有一些缺点(可以在其评论部分找到)并且不适合生产级代码。
使用 node.js 检测 Internet 下载和上传速度的最佳做法是什么?使用图书馆是可以的。我想使用这个值来绘制一个实时图表,就像在任务管理器>性能>“Wi-fi”图表中找到的那样。
正如@Abion47 所说,“每个 download/upload 测试都将是“download/upload 一些已知大小和传输时间的虚拟文件的变体”。
因此我使用 fast-speed-test-api 解决了这个问题。 API 没有包含太多文档,所以我在下面包含了我的工作示例:
const FastSpeedtest = require("fast-speedtest-api");
const myPromise = fastnetApi();
myPromise.then(res =>{
console.log('it returned:', res);
return res
})
function fastnetApi() {
let speedtest = new FastSpeedtest({
token: "YOUR-TOKEN(CAN BE FOUND IN THE GITHUB DOC)", //**** required
verbose: false, // default: false
timeout: 5000, // default: 5000
https: true, // default: true
urlCount: 5, // default: 5
bufferSize: 8, // default: 8
unit: FastSpeedtest.UNITS.Mbps // default: Bps
});
return speedtest.getSpeed().then(s => {
console.log(`Speed: ${s} Mbps`);
console.log(typeof s)
return s;
}).catch(e => {
console.error(e.message);
});
}
我正在尝试弄清楚如何使用 JavaScript 检测互联网下载和上传速度。
另一个 Whosebug 线程中使用虚拟下载文件发布的另一个解决方案有一些缺点(可以在其评论部分找到)并且不适合生产级代码。
使用 node.js 检测 Internet 下载和上传速度的最佳做法是什么?使用图书馆是可以的。我想使用这个值来绘制一个实时图表,就像在任务管理器>性能>“Wi-fi”图表中找到的那样。
正如@Abion47 所说,“每个 download/upload 测试都将是“download/upload 一些已知大小和传输时间的虚拟文件的变体”。
因此我使用 fast-speed-test-api 解决了这个问题。 API 没有包含太多文档,所以我在下面包含了我的工作示例:
const FastSpeedtest = require("fast-speedtest-api");
const myPromise = fastnetApi();
myPromise.then(res =>{
console.log('it returned:', res);
return res
})
function fastnetApi() {
let speedtest = new FastSpeedtest({
token: "YOUR-TOKEN(CAN BE FOUND IN THE GITHUB DOC)", //**** required
verbose: false, // default: false
timeout: 5000, // default: 5000
https: true, // default: true
urlCount: 5, // default: 5
bufferSize: 8, // default: 8
unit: FastSpeedtest.UNITS.Mbps // default: Bps
});
return speedtest.getSpeed().then(s => {
console.log(`Speed: ${s} Mbps`);
console.log(typeof s)
return s;
}).catch(e => {
console.error(e.message);
});
}