Javascript 如何显示json数据的实际下载进度?

Javascript 如何显示json数据的实际下载进度?,javascript,jquery,ajax,json,Javascript,Jquery,Ajax,Json,我试图为一个大的json数据显示一些实时进度条,同时它被完全下载 可能吗 我尝试使用XMLHttpRequest $.ajax({ xhr: function () { var xhr = new window.XMLHttpRequest(); xhr.addEventListener("progress", function (evt) { if (evt.lengthComputable) {

我试图为一个大的json数据显示一些实时进度条,同时它被完全下载

可能吗

我尝试使用XMLHttpRequest

$.ajax({
    xhr: function () {
        var xhr = new window.XMLHttpRequest();
        xhr.addEventListener("progress", function (evt) {
            if (evt.lengthComputable) {
                var percentComplete = evt.loaded / evt.total;
                console.log(percentComplete);
            }
        }, false);
        return xhr;
    },
    type: 'GET',
    url: 'url',
    data: {},
    success: function (data) {
        console.log("success")
    }
});

这里,evt.lengthComputeable是假的。有没有办法显示json数据的实时进度条?

这里提供了一个很好的答案:我认为
lengthComputeable
是空的,因为浏览器不知道数据的总大小。尝试添加
Content-Length
头?@LeoNyx如果Content-Length头可用,是否可能?是否有任何带有Content-Length头的url?internet上几乎所有静态文件都提供
Content-Length
。您的本地开发服务器肯定也会这样做。