我需要以编程方式从 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 更好?