2

我创建了一个应用程序来上传图片以进行进一步处理。一切正常,除了上传进度条。

function upload (fData) {
        $.ajax({
            url: '@Url.Action("UploadFile", "Home")',
            type: 'POST',
            mimeType: 'multipart/form-data',
            headers: { '__RequestVerificationToken': $("input[name=__RequestVerificationToken]").val() },
            data: fData,
            contentType: false,
            processData: false, 
            xhr: function () {
                var xhr = $.ajaxSettings.xhr();
                xhr.upload.onprogress = function (evt) {
                    uploadProgress = evt.loaded / evt.total * 100;
                    $(bar).css('width', uploadProgress + '%');complete');
                };
                return xhr;
            }
        })

实际上,如果我使用 chrome 节流功能,进度计算工作正常。上传完成后,服务器会做一些工作并返回响应。一切都按预期工作。

带节流

不限制上传立即完成......至少它似乎立即完成。我可以使用wireshark 跟踪上传或简单地调试服务器代码。数据不存在,但加载的值立即 =总值。我使用 Edge 有相同的行为。

无节流

我认为同样的问题,但这里描述了不同的设置。

4

0 回答 0