验证上载的文件是App Engine上的图像

时间:2012-02-24 17:24:24

标签: java google-app-engine

我正在进行图像上传,如App Engine Images API文档中所述,使用getServingUrl()生成上传URL,然后将请求转发给我自己的处理程序。我想知道是否有办法验证上传的blob实际上是图像还是我必须读取字节并使用它来计算文件类型。

2 个答案:

答案 0 :(得分:3)

大多数图像文件在字节中都有一个易于查找的幻数或签名,并且可能比尝试解码整个图像更快(即尝试使用调整大小操作;因为这可能会在NOT上快速失败一个图像,但如果它是一个图像,它实际上会进行操作。)

我怀疑你真正想要支持的图像类型有限;以下是维基百科上的一些示例魔术数字:

http://en.wikipedia.org/wiki/Magic_number_%28programming%29#Magic_numbers_in_files

答案 1 :(得分:1)

在Python中,您可以使用图像API对blob数据执行简单的转换(调整大小工作),如果blob不是图像,则会引发NotImageError。 Java中可能存在等价物。