我正在处理一个包含流音频和许多幻灯片的页面。在活动期间,音频播放和幻灯片按需加载。在常规活动期间工作正常,但在大型公司活动期间失败,其中1000个用户的幻灯片的http下载激增带宽并暂时使网络饱和,导致音频跳过/切断。
我想在用户打开页面时预加载所有图像,但我想知道是否也可以对所有图像的下载进行速率限制。我喜欢将图像的预加载限制为特定的kb / s。这是可能的客户端吗?如果不是什么是一个好的选择服务器/客户端?
答案 0 :(得分:0)
使用文件API在JavaScript中可以进行限制文件大小的客户端验证。
这里有一个很好的教程:Reading files in JavaScript using the File APIs。
最后一点:你不应该只依赖'客户端验证。您必须使用服务器端验证。
更新(仅适用于'客户端验证):
使用JS,您可以尝试这样:
if (typeof FileReader !== "undefined") {
var size = document.getElementById('myfile').files[0].size;
// check file size
}
(所有浏览器可能都不支持。只有最新版本的Webkit浏览器才支持此功能。)
或者使用 FILE API ,您可以尝试这样:
<input type="file" id="fileInput" />
var size = document.getElementById("fileInput").files[0].size;