检测用户是否更改了要上传的文件扩展名?

Chr*_*ner 1 java servlets file-upload mime-types

使用Java servlet,是否可以检测文件的真实文件类型,无论其扩展名如何?

场景:您只允许纯文本文件上传(.txt和.csv)用户获取文件mypicture.jpg,将其重命名为mypicture.txt并继续上传文件.你的servlet只需要文本文件,并试图读取jpg.

显然这是用户错误,但有没有办法检测到它不是纯文本而不是继续?

Bal*_*usC 6

您可以使用内置URLConnection#guessContentTypeFromStream()API 执行此操作.然而,它可以检测到的内容类型非常有限,您可以更好地使用第三方库,如jMimeMagic.

也可以看看: