当我尝试获取null
图片的内容类型
png
值
以下是我尝试在servlet
中获取内容类型的方式:
String contentType = getServletContext().getMimeType(image.getName());
我收到contentType = null
而image.getName()
返回png
图片的名称。
我尝试了其他方式来获取相同png
图片的内容类型:
String contentType = new MimetypesFileTypeMap().getContentType("imageName.png");
上面的代码给了我contentType = application/octet-stream
。
我的问题是为什么我为同一张图片获取不同的内容类型,我该怎么办才能得到image/x-png
.png
类型图片的正确内容
答案 0 :(得分:1)
我知道这可能为时已晚,但今天偶然发现了这一点。就我而言,问题是:
从应用程序服务器检索文件的MIME类型。大多数应用程序服务器(包括IBM®WebSphere®ApplicationServer和Tomcat)都带有一些预定义的MIME类型。但是,默认类型中仍缺少许多常见文件格式,必须由服务器管理员定义。
找到here
答案 1 :(得分:0)
我的解决方案:
String contentType = new MimetypesFileTypeMap().getContentType("imageName.PNG");
//contentType = null
String contentType = new MimetypesFileTypeMap().getContentType("imageName.png");
//work for me