Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/419.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript读取Mime类型CSV始终为空_Javascript_Windows_Csv_Chromium - Fatal编程技术网

Javascript读取Mime类型CSV始终为空

Javascript读取Mime类型CSV始终为空,javascript,windows,csv,chromium,Javascript,Windows,Csv,Chromium,我目前正在努力使用Windows浏览器检查csv文件的mimetype。我已尝试通过以下方式进行检查: console.log($('#file')[0].files[0].type); // output: "" 但当我使用Linux浏览器时,它运行良好: console.log($('#file')[0].files[0].type); // output: "text/csv" 这怎么会发生?有没有其他解决办法?任何帮助都将不胜感激 以下是我的Windows+浏览器规范: 铬50.0

我目前正在努力使用Windows浏览器检查
csv
文件的mimetype。我已尝试通过以下方式进行检查:

console.log($('#file')[0].files[0].type); // output: ""
但当我使用Linux浏览器时,它运行良好:

console.log($('#file')[0].files[0].type); // output: "text/csv"
这怎么会发生?有没有其他解决办法?任何帮助都将不胜感激

以下是我的Windows+浏览器规范:

  • 铬50.0.2632.0
  • Windows 10 Pro 64位
更新1 当我试图上传一个
jpg
/
png
/任何图像文件时,Chromium都能检测到它的mime类型

对不起,英语不是我的母语


mime类型由浏览器根据其“了解”的内容进行设置。Internet Explorer没有.csv的mime类型。我只需要在IE上手动检查.csv文件扩展名,或者您可以使用比IE知道更多的外部库

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

您可以查找mime类型列表,只需添加您认为将遇到的类型

编辑


浏览器还提供FileReader对象。你可以用它来检查客户端的东西。由于Javascript是单线程的,我不知道它能处理多大的文件

文件。类型
根据客户端配置进行解析。如果未在客户端配置中配置
.csv
,则它将返回空字符串


有关此问题的解释,请参见。

当您说“Windows浏览器”时,您是否也使用Chromium或Internet Explorer?我的Windows上没有IE。我使用了
Edge
,但它仍然返回一个空字符串。我们也面临同样的问题。在我的windows pc中,我得到了“application/vnd.ms excel”作为csv文件的mime类型,但我的两个同龄人得到了空的“”。不确定是什么导致了这个问题。它不能特定于浏览器,但可能与环境有关,因为我们三个人都在使用Chrome。实际上,我的客户同意使用Google Chrome/Chrome/任何基于WebKit的浏览器。换句话说,他们不愿意使用IE。问题是,Chrome或Google Chrome无法检测csv mime-type。谢谢,伙计。非常感谢。根据您的建议,可能我必须将其上载到服务器并检查它是否是有效的CSV文件(可能Windows中的AFAIK javascript无法处理此问题,或者可能只是某个地方的错误配置问题)。服务器端对此问题有更多选项,至少根据我检查的所有来源。你也可以检查文件开头的魔法位以检查mimetype,但你必须小心,因为重命名为.csv的标准文本文件可能完全有效。我已经尝试过这种解决方案。这是可行的,但正如你们所说,当用户想要上传巨大的文件时,这是不好的。