如何获取 jQuery AJAX POST 成功对象的内容长度标头?

问题描述

我有一个 jQuery AJAX 调用,它将一个 URL 的页面附加到一个选择器中。我想监控被追加页面的进度:

$.ajax({
        
    url: URL,type: 'POST',data: {
        page: 'page'
    },dataType: 'HTML',async: true,cache: false,xhr: 
    function() {
    
        var XHR = new window.XMLHttpRequest();
        
        XHR.upload.addEventListener('loadstart',HandleXHR); // Upload has begun
        XHR.upload.addEventListener('progress',HandleXHR); // Periodically indicates the amount of progress made so far
        XHR.upload.addEventListener('error',HandleXHR); // Upload Failed due to an error
        XHR.upload.addEventListener('abort',HandleXHR); // Upload operation was aborted
        XHR.upload.addEventListener('load',HandleXHR); // Upload completed successfully
        XHR.upload.addEventListener('loadend',HandleXHR); // Upload finished
    
        function HandleXHR(event) {
            
            if(event.lengthComputable) {
                
                PercentProgress = Math.floor((event.loaded / event.total) * 100);
        
                console.log(PercentProgress); // Returns 'Content-Length' header of data object (above)
        
            }
        
        }
        
        return XHR;
    
    },success: 
    function(data) {

        console.log(data.length); // Returns more accurate number (probably what I want)
            
        $('.selector').html(data);
        
    }
                
});

如何计算 XHR 对象中正确的标头 Content-Length 信息以显示与标头 Content-Length相关的 AJAX 调用成功对象的进度状态> [我已经得到] 的数据对象?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)