Google Chrome 81文件API:大小、上次修改日期和Blob信息未更新文件内容已更改



我们有一个实时数据上传应用程序,可以读取连续流文件。我们在两年前开发了这个逻辑。

在chrome 81中,实时文件上载停止工作,因为chrome读取的文件BLOB没有得到更新(如果文件数据更改(,它仍然显示旧BLOB。添加到文件中的任何新数据都不显示。我进一步看到,所有显示旧数据的文件API属性,例如File.lastModifiedDate,File.Size.

在chrome的早期版本中,当文件内容发生更改时,所有这些属性都会更新。

已上载文件详细信息。文件增长到1000KB,File API仍然显示大小为49.2KB的旧细节。

我相信这是Chrome 81中的一个新错误,必须加以解决。如果他们是替代方案,请提供建议。

不幸的是,这个新行为正在按预期工作。网络上的文件对象总是被认为是不可变的快照。不幸的是,Chrome在过去有很多异常,这种行为没有得到正确实现(主要是因为实现早于规范(,这些不一致在M81中得到了修复。

在Chrome中,我们也在试用本机文件系统API(https://web.dev/native-file-system/),它明确地打算支持即使在文件被修改后也能从中读取的用例,因此这可能是一种替代方案。

最新更新