有没有办法在下载之前识别mime类型的文件(当只知道url时)? 例如,如果我想仅针对某些特定类型显示我的上下文菜单项。或者,应根据下载类型更改下载屏幕。
答案 0 :(得分:1)
您可以使用nsIMIMEService.getTypeFromURI()
从文件扩展名中获取MIME类型,它将从文件扩展名中获取MIME类型。沿着这些方向:
var uri = Components.classes["@mozilla.org/network/io-service;1"]
.getService(Components.interfaces.nsIIOService)
.newURI("http://example.com/test.gif", null, null);
var mimeService = Components.classes["@mozilla.org/mime;1"]
.getService(Components.interfaces.nsIMIMEService);
var mime = mimeService.getTypeFromURI(uri);
当然,这并不接近可靠 - URL的MIME类型可以是任何内容,text.gif
可以是HTML页面或SVG图像或其他任何内容。因此,获取MIME类型的唯一真正方法是开始下载。