要我使用更具体:是可以安全使用的ServletContext#getMimeType()
public String getMimeType() {
ServletContext context = request.getServletContext();
String filePath = request.getRequestURI().substring(request.getContextPath().length()+1, request.getRequestURI().length());
String fileName = context.getRealPath(filePath);
return context.getMimeType(fileName);
}
确定从客户端请求(CSS,JS,字体等)的文件类型。取决于文件的类型,会发生不同的操作。这在浏览器中是否一致,或者通常是一种安全的方式来根据URL中传递的文件名来确定文件类型,还是很容易中断文件类型?
它基于文件扩展名,而不是文件内容,所以它的方式不准确,因为不同的文件格式可能共享相同的扩展名。 – Andreas
换句话说文件上传它是一个不走,但对于内部应用程序(要求我自己的资源),它应该是罚款?我一直注意到资源调用中的大量随机404,并且如果这是罪魁祸首,一直无法确定。所以没有办法request.getMimeType可能会返回基于浏览器正在做的事情的空值? – ryandlf
你现在正在转换。你的代码是'context.getMimeType()',但现在你正在谈论'request.getMimeType()'。这是什么? – Andreas