【发布时间】:2019-10-18 16:02:02
【问题描述】:
我正在尝试通过 formData 对象将我的文件从浏览器传递到服务器,如下所示。 但是当我上传更大的文件(> 80mb)时,代码会导致浏览器(谷歌浏览器)崩溃。
const formData: IUploadFileBlobModel = {
fileName: file.fileName,
description: file.description,
mimeType: file.file.type,
fileBlob: (event.target as FileReader).result
};
/*我们可以使用任何其他方法代替 (event.target as FileReader).result */
【问题讨论】:
-
中间有没有web服务器(apache, Nginx)?
-
是的,我们使用 IIS 服务器。
-
这里的 FileReader 有什么意义?
file.file是一个文件,这意味着它是一个 Blob,而 can be sent through a Network request 按原样或包装在 FormData 中。无需阅读它。 -
@Kaiido 将其作为文件发送时,浏览器会自动将文件名添加到请求中,而 blob 不会这样做。然而,这可能不是 OP 的问题
-
@Kaiido,我认为语句 (event.target as FileReader).result 实际上是失败的。我认为这一点会使浏览器崩溃。
标签: javascript google-chrome blob filereader onload