Javascript读取Mime类型CSV始终为空

kri*_*lfa 5 javascript windows csv chromium

我目前正在使用Windows浏览器来检查csv文件的MIME类型。我尝试通过以下方式进行检查:

console.log($('#file')[0].files[0].type); // output: ""
Run Code Online (Sandbox Code Playgroud)

但是当我使用Linux浏览器时,它可以正常工作:

console.log($('#file')[0].files[0].type); // output: "text/csv"
Run Code Online (Sandbox Code Playgroud)

这怎么可能呢?是否有其他替代解决方案?任何帮助,将不胜感激。

这是我的Windows +浏览器规格:

  • 铬50.0.2632.0
  • Windows 10专业版64位

更新1

当我试图上传jpg/ png/任何图像文件,铬可以检测到它的MIME类型。

抱歉,英语不是我的母语。

Ray*_*ear 1

mime-type 由浏览器根据它“知道”的扩展来设置。Internet Explorer 没有 .csv 的 mime 类型,请参阅此处的列表。我只是在 IE 上手动检查 .csv 文件扩展名。或者您可以使用比 IE 了解更多的外部库。

最终 file.type 中的内容由浏览器设置。您需要使用库(我找不到)或 switch 语句(例如此建议)手动检查扩展。

您可以查找哑剧类型列表,然后添加您认为会遇到的类型。

编辑

浏览器还提供 FileReader 对象。您可以使用它来检查客户端的情况。由于 Javascript 是单线程的,我不知道它处理大文件的效果如何。这是一个链接。