我试图粗略估计到服务器的旅行时间。我目前正在通过加载图像并确定时间来做到这一点。我这样做5次,平均。实际上,这确实给了我非常准确的结果,但是尽管使用了唯一的查询字符串,但Chrome(尚未尝试使用其他浏览器)仍可以缓存页面。
function rttTest() {
rtt_count++;
var startTime = new Date();
var endTime;
var img = new Image();
img.onload = function () {
if (rtt_count <= rtt_tests) {
endTime = new Date();
total_rtt = total_rtt + (endTime.getTime() - startTime.getTime());
console.log(total_rtt);
rttTest();
} else {
console.log((total_rtt / rtt_tests).toFixed(0));
}
};
img.src = "http://the url/load.gif?v=" + startTime;
}
我读过的所有文章/帖子仍然列出了唯一的查询字符串作为破坏缓存的方法,但是它不起作用。在Chrome浏览器中,必须重新刷新并清除缓存,然后它才能再次起作用。
是否有任何新方法可确保每次都“首次”提取文件?
为澄清起见,文件的第一个获取始终正确。例如,假设第一次运行需要150毫秒(即刻完成),但循环中的其他4则需要1-2毫秒,而不是每次150毫秒。我只能使用一个测试的值,但我希望取一个平均值。