【发布时间】:2013-04-03 23:18:44
【问题描述】:
我需要以编程方式从 Blobstore 获取 Blob,但事先不知道大小。有人知道怎么做吗?
我尝试过使用
BlobstoreService blobStoreService = BlobstoreServiceFactory.getBlobstoreService();
byte[] picture = blobStoreService.fetchData(blobKey, 0, Integer.MAX_VALUE);
但我收到一个错误,因为(至少看起来)Integer.MAX_VALUE 太大了。
java.lang.IllegalArgumentException: Blob fetch size 2147483648 it larger than maximum size 1015808 bytes.
at com.google.appengine.api.blobstore.BlobstoreServiceImpl.fetchData(BlobstoreServiceImpl.java:250)
那么有人知道如何正确执行此操作吗?另外,如果您可以顺便告诉我,将相同的图像作为“jpeg”还是“png”放入 blobstore 更好?
【问题讨论】:
-
这似乎并不重要,但您知道给定的限制是包容性的,因此
Integer.MAX_VALUE可能会失败。在这里并不重要。 -
啊,谢谢。它们具有包容性。
-
一个
inclusiveAPI,难以置信。我认为app-engine没有被认真对待。
标签: google-app-engine blobstore gae-eclipse-plugin