Javascript MIME类型的文件扩展名
仅使用JavaScript和dojo/jQuery等框架 有没有办法找到特定文件扩展名的内容类型 假设我输入字符串“something.pdf”,我想显示一个显示“application/pdf”的警报Javascript MIME类型的文件扩展名,javascript,jquery,dojo,mime-types,Javascript,Jquery,Dojo,Mime Types,仅使用JavaScript和dojo/jQuery等框架 有没有办法找到特定文件扩展名的内容类型 假设我输入字符串“something.pdf”,我想显示一个显示“application/pdf”的警报 或者“something.html”显示“text/html”?我认为您需要自己维护映射(您可以XHR物理文件并获取它,但我怀疑您是否愿意这样做) 如果映射中不存在,则返回false。如果愿意,只需返回extToMimes[ext],如果不存在undefined。它也是 如果它是文件输入,也可
或者“something.html”显示“text/html”?我认为您需要自己维护映射(您可以XHR物理文件并获取它,但我怀疑您是否愿意这样做) 如果映射中不存在,则返回
false
。如果愿意,只需返回extToMimes[ext]
,如果不存在undefined
。它也是
如果它是文件输入
,也可以访问它
var mime = $('input[type="file"]').prop('files')[0].file;
请记住,mime类型的扩展不能保证实际文件本身;您需要在服务器端对其进行解析,以确定它实际上是什么类型的文件。您可以使用
mime.getType(“something.pdf”);//等
只是想知道这个答案是否仍然正确,因为它已经4年了?我们还需要自己维护映射吗?@Marklar如果你没有要上传的文件,只是一个扩展名,我想你需要一个映射。然而,似乎有人在维护一个。如果你有一个文件要上传呢?您是否使用XHR?@Marklar如果用户选择了一个文件,您可以使用JavaScript获取mime类型,如答案中所示。
var mime = $('input[type="file"]').prop('files')[0].file;
<script src="https://wzrd.in/standalone/mime@latest"></script>
<script>
mime.getType("something.pdf"); // etc.
<script>