【发布时间】:2016-07-28 19:23:53
【问题描述】:
我正在尝试将图像从 Android 设备存储到 Google Appengine Blobstore。到目前为止我做了什么:
创建了一个返回上传 URL 的 Enpoint(Google Cloud Endpoints)(工作中)
使用 OKHTTP3 创建了一个 POST 请求,该请求以多部分形式发送图像文件(工作?也许不行?)
创建了一个 Servlet,该 Servlet 传递到上传 URL 以处理获取密钥。 (它会被调用,但 getUpload 总是返回 null。)
我在想这可能与我发送 POST 请求的方式有关?
OkHttpClient client = new OkHttpClient();
RequestBody body = new MultipartBody.Builder()
.setType(MultipartBody.FORM)
.addPart(
Headers.of("Content-Disposition", "form-data; name=\"photo\""),
RequestBody.create(MediaType.parse("image/jpeg"), file)
)
.build();
Request request = new Request.Builder()
.url(url)
.post(body)
.build();
在我的 Servlet 中,我可以看到一个名为“photo”但调用的参数:
List<BlobKey> blobs = blobstoreService.getUploads(req).get("photo");
返回空值。零 BlobKeys...
我确定我错过了一些愚蠢的东西......任何帮助都将非常感激!
【问题讨论】:
标签: java android google-app-engine servlets blobstore