- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
错误
Caused by: java.lang.IllegalStateException: Must be called from a blob upload callback request. at com.google.appengine.api.blobstore.BlobstoreServiceImpl.getUploads(BlobstoreServiceImpl.java:169)
代码
public class UserUploadProfilePictureResource extends ServerResource {
@Post
public void handleBlobstoreUpload(Representation entity) {
Representation rep =null;
if (entity !=null) {
if (MediaType.MULTIPART_FORM_DATA.equals(entity.getMediaType(), true)) {
Request restletRequest = getRequest();
HttpServletRequest servletRequest = ServletUtils.getRequest(restletRequest);
BlobstoreService blobstoreService = BlobstoreServiceFactory.getBlobstoreService();
Map<String, List<BlobKey>> blobs = blobstoreService.getUploads(servletRequest);
可能的解决方案(但我不想要的)
首先。我不想调用第二个 HttpServlet。
其次。关于这篇文章,有手动编写文件的解决方案:
Google 表示如下:
Deprecated: The Files API feature used here to write files to Blobstore is going to be removed at some time in the future, in favor of writing files to Google Cloud Storage and using Blobstore to serve them.
可能的解决方案 2(但只是解决方法的概念)
http://www.cloudave.com/1055/the-new-google-app-engine-blobstore-api-first-thoughts/
Bret Slatkin notes that when the API manufactures the POST URL to be used for uploading the files, it creates a unique one-time URL which which mitigates any potential sniffing.
This fits perfectly for the scenario when you’re rendering a web form to be submitted by the user. But, it makes things harder if you’re trying to provide a REST API that allows uploading files (think of something like TwitPic for example). In this case you’ll have to write your own render that simulates what a web form would do (get the files, create random POST URL, call it, …)
问题
在 Google 应用引擎中存储图像的最佳方法是什么?有比 blobstore 更好的方法吗?如何在 blobstore 中存储图像?
最佳答案
我认为您最好的选择是 Google Cloud Storage Client Library,并将得到官方支持,https://developers.google.com/appengine/docs/java/googlecloudstorageclient/看起来他们将不再支持以编程方式写入 blobstore,可能是为了促进云存储在 blobstore 上的使用。图像和 blobstore api 在 GCS 上工作,用于创建和存储 blobstore key 以及生成图像 url/调整大小等。
另一种我没有深入研究的非官方方式是复制 Files Api 源并自己维护它,它可能使用不会消失或始终可用的 rpc 调用,但我不太清楚。
关于java - Google App Engine Blobstore 和 ReSTLet - "Must be called from a blob upload callback request",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18042248/
我正在 appengine 中开发一个应用程序,我们希望能够向离线用户提供内容。这意味着我们需要获取所有使用过的 blobstore 文件并为离线用户保存它们。我使用服务器端来执行此操作,以便只执行一
" method="post" enctype="multipart/form-data" >
我确实需要上传大于 1 Mb 的文件,所以我只有 Blobstore API。但在生产中使用它吗?知道任何问题吗? 最佳答案 我很高兴地使用了 Google 内部的等效功能(我在 Google 工作)
我想从另一个站点获取图像 (~250Kb) 并将它们保存到 blobstore 。我想使用 Blobstore,因为它的配额(5Gb 免费)与数据存储(1Gb 免费)相比。我该怎么做? GAE 文档说
我正在尝试将表单中的多个文件上传到 BlobStore。 表格: Key Name name image thumb 然后我尝试为每个上传的文件获取 BlobInfo 对象:
在我的应用程序中,我需要执行以下操作:1. 将包含图像(目前只有 jpg)和其他内容的 zip 文件上传到 BlobStore。2. 应用引擎后端应从上传的 zip 中读取条目,并将在其中找到的所有图
我正在尝试对一些使用 Blobstore API 的代码进行单元测试,但是我收到此代码的 NullPointerException : @ContextConfiguration(locations
在接下来的几天里,我必须开始编写一些报告生成函数。我需要写入调用是原子的,并让我知道存储时是否出现故障。 appengine 上的一项实验性功能允许使用 blobstore 作为文件系统。(https
上传文件名包含空格且不带文件扩展名的文本文件会引发以下异常。文件名类似于“README TXT”或“ABC DEF”。 使用 Blobstore 示例可以重现此问题。 https://develope
我有这个上传文件的jsp 文件。我添加了姓名和电子邮件表格。我希望能够跟踪上传到我的应用程序引擎 blobstore 的哪个 blob 来自哪个人。我是否必须绑定(bind)数据存储才能获取联系信息?
我尝试使用下面的代码使用curl将图像上传到blobstore,但收到以下错误“必须从blob上传回调请求调用”。 但是,如果我使用带有操作的表单,它会上传: blobstoreService.cre
我正在将数据上传到 blobstore。它应该只暂时停留在那里,并从我的 AppEngine 应用程序中上传到 Amazon S3。 看来我只能通过 BlobDonwloadHandler 获取数据,
我目前正在 Appengine 中制作一个图像共享网站,它主要按照我想要的方式工作,但有时我想要一个小版本的图像(缩略图) - 目前我正在使用 HTML 缩小它,但是当完全没有必要时,浏览器仍然会加载
我可以使用 python 中的 uploadhandler 上传文件。当我尝试获取文件的 url 时,我收到错误“Assertionerror images the service does not
关注此blobstore document 关于如何上传到 Blobstore。它显示了通过JSP + Servlet 方式上传。 由于我的应用程序基于 GWT,因此我需要调整 GWT RPC(而不是
假设我有一些文件上传表单,例如文档中的文件 https://cloud.google.com/appengine/docs/java/blobstore/ 如果我将文件 file.txt 保存到 bl
我想使用 BlobstoreInputStream 从 Blobstore 一次读取一行文本并处理该文本 123,ABC,DEF,GHI,JKL,123,456,789,123\r\n 但是 Blob
我阅读了文档,四处搜索,但仍然不知道如何将 blob 读取为字节数组。 我能够生成 PDF 文件并将它们存储在 blobstore 中。我还可以使用 serve() 为这些 blob 提供下载服务,没
我正在阅读有关 Google App Engine 中的 Blobstore 的信息。下面的代码来自示例文档。用户选择要上传的文件并单击提交后,如何将 key 放入 javascript 变量中?我可
我正在尝试使用 taskqueue 和 deferred 将大型用户信息列表从 json 文件导入到数据存储区。 User 包含用户信息,包括来自不同应用的图像 url。在导入过程中,应该抓取图像并将
我是一名优秀的程序员,十分优秀!