如何在实际开始使用javascript下载之前确定下载文件类型?

如何在实际开始使用javascript下载之前确定下载文件类型?,javascript,Javascript,我正在开发一个chrome扩展,在这个扩展中,我需要确定文件的原始类型,并在遇到特定类型的文件时停止下载。 要确定文件类型,我有以下代码。如何在下载文件之前使用此代码选择下载文件 const xhr = new XMLHttpRequest(); xhr.open('GET', 'unicorn.png'); xhr.responseType = 'arraybuffer'; xhr.onload = () => { fileType(new Uint8Array(this.r

我正在开发一个chrome扩展,在这个扩展中,我需要确定文件的原始类型,并在遇到特定类型的文件时停止下载。 要确定文件类型,我有以下代码。如何在下载文件之前使用此代码选择下载文件

 const xhr = new XMLHttpRequest();
 xhr.open('GET', 'unicorn.png');
 xhr.responseType = 'arraybuffer';

 xhr.onload = () => {
 fileType(new Uint8Array(this.response));
 //=> {ext: 'png', mime: 'image/png'}
 };

 xhr.send();

应使用“幻数”而不是字符串匹配来确定文件类型。

设置为.responseType
的“blob”
,选中
类型

  xhr.responseType = "blob";

  xhr.onload = () => {
     console.log(xhr.response.type)
  };

尝试使用此节点模块文件类型。这应该符合你的目的

能否使用XMLHttpRequest执行HEAD请求并获取文件名?我打赌不会,但我会检查。node与chrome扩展有什么关系?抱歉,没有看到chrome扩展部分