Ich versuche, ein Bild von einem Android-Gerät auf dem Google Appengine Blobstore zu speichern. Was ich bisher getan:BlobstoreService.getUploads gibt immer NULL zurück
eine Enpoint (Google Cloud Endpoints) erstellt, die eine Upload-URL zurückgibt (Working)
eine POST-Anfrage mit OKHTTP3 Erstellt, die die Bilddatei in einem multipartform sendet (Arbeitet? Vielleicht nicht?)
Ein Servlet erstellt, das an die Upload-URL übergeben wird, um die Schlüssel abzurufen. (Es wird aufgerufen, aber getUpload gibt immer null.)
Ich denke, vielleicht ist es mit dem zu tun hat, wie ich schicke meine POST-Anfrage?
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();
In meinem Servlet kann ich ein param namens "Foto" sehen, aber Aufruf:
List<BlobKey> blobs = blobstoreService.getUploads(req).get("photo");
NULL zurück. Zero BlobKeys ...
Ich bin sicher, ich vermisse etwas dumm ... Jede Hilfe wäre unglaublich geschätzt!