使用ajax检查下载时间
Check download time with ajax?
我想下载一个512kb的文件,并检查下载时间。我使用以下代码,但它检查只是网站的响应时间,而不是等到整个文件下载。如何查看整个文件下载时间?
var start = new Date();
$.ajax ({
url: 'https://www.example.com/512kb',
cache: false,
success : function()
{
var total=(new Date() - start)
},
error : function(jqxhr, status, ex) {}
});
编辑:当我在本地PC上运行网站时,internet explorer等待所有文件下载,Firefox和chrome没有。如果我把所有的服务器行为相同,而不是等待所有的文件。为什么只在本地internet explorer是这样的?
看起来您没有使用total
变量做任何事情。因为它是在success
回调函数中定义的,所以它只存在于该函数中,因此在函数返回时丢失。
下面的代码显示了一个警告框,其中包含完成ajax调用所需的时间和检索到的数据的长度:
var start = new Date();
var total;
$.ajax ({
url: 'http://fiddle.jshell.net/',
cache: false,
success : function(data)
{
total=(new Date() - start);
alert('total: ' + total + ' len: ' + data.length);
},
error : function(jqxhr, status, ex) {}
});
http://jsfiddle.net/WkKE2/2/在javascript中没有办法做到这一点。但是你会在这个stackoverflow问题中找到一些解决方法:当下载的文件保存到磁盘时浏览器事件
编辑:这个stackoverflow问题有一个更好更简单的答案:检测何时"文件下载"。基本上你的目标是下载链接到一个隐藏的iframe在你的页面,并使用onload事件的这个iframe
相关文章:
- 如何在生成下载文件时显示加载动画
- 直接下载文件,而不是从window.open(url)
- 如何使用javascript或html下载PDF格式的填写表单
- Javascript运行php文件,然后下载文件
- Java脚本时间添加
- 在单击href链接的同时下载文件
- 尽管链接成功并已成功下载,但未找到NPM模块
- 通过php页面中的js强制下载txt
- Json数据包含日期和时间格式
- 如何根据时间运行不同的脚本
- 我将如何夸大(延长)使用javascript下载文件所需的时间
- 计算下载时间并重复下载n次
- 使用 javascript 计算下载时间
- 在下载图像后或延迟一段时间后执行jQuery函数
- 1 个同时下载 + 强制等待时间 + 亚马逊 S3
- “另存为blob”需要很长时间才能从给定的url下载文件
- MVC淘汰.儿童下载列表没有't第一时间加载模型数据
- 如何获得从服务器端到客户端文件的下载时间- Asp.Net
- 添加下载链接的时间限制
- 使用ajax检查下载时间