为什么S3上传会为Firefox和Chrome返回不同​​的事件?

时间:2019-06-25 13:22:38

标签: amazon-web-services amazon-s3

我正在使用预先签名的URL将文件上传到S3。我正在这样的打字稿中构造我的PUT请求:

const headers = new HttpHeaders({'Content-Type': 'text/csv'});
return new HttpRequest('PUT',presignedUrl,pathToLocalFile,{
    headers: headers,
    reportProgress: true,
  });

然后,我订阅可观察的HTTP来获取HttpEvent,并对其进行适当处理(因为我已启用reportProgress)。这一切都可以,但是奇怪的是,在Chrome中,事件遵循以下模式:

Sent
UploadProgress
UploadProgress
... repeat until finished upload
Response

在Firefox中,上传相同的文件,则事件如下所示:

Sent
UploadProgress
UploadProgress
... repeat until finished upload
ResponseHeader
DownloadProgress
Response

为什么在Firefox中又添加了两个事件?为什么我要在世界上进行“下载进度”活动?我还应该注意,除了类型之外,ResponseHeader和Response事件是相同的,而DownloadProgress事件在其他方面是无害的(我相信它只显示0的进度)。

0 个答案:

没有答案