5

我正在通过 javascript 代码将文件上传到服务器。我注意到不同的浏览器发送不同大小的字节。如下图所示,Internet Explorer 发送的是小字节,而 Chrome 和 Firefox 发送的是更大的字节。

  1. 我正在使用 XMLHttpRequest 上传文件。我可以为所有浏览器设置标准上传字节吗?因为不同大小的流量在某些浏览器上会出错。Http 错误是 404.13。
  2. 我将 web.config 文件配置为<requestLimits maxAllowedContentLength="1073741824">(1GB),但是当我使用 Firefox 和 Chrome 上传一个大文件(500 Mb)时,服务器给出了 system.OutOfMemoryException。Internet Explorer 工作正常。

火狐

在此处输入图像描述

IE浏览器

在此处输入图像描述

铬合金

在此处输入图像描述

4

1 回答 1

1

我不知道为什么会有所不同,但是您可以根据浏览器更改您的行为(而不是像您在问题中提出的那样进行标准化)。

以moo上传器中的代码为例。

来自: https ://github.com/juanparati/MooUpload/blob/master/Source/MooUpload.js

    // Get slice method
    if (file.mozSlice)          // Mozilla based
      chunk = file.mozSlice(start, total)
    else if (file.webkitSlice)  // Chrome, Safari, Konqueror and webkit based
      chunk = file.webkitSlice(start, total);
    else                        // Opera and other standards browsers
      chunk = file.slice(start, total)
于 2013-10-17T22:14:33.920 回答