Laden Sie eine Datei von Javascript zu Google Cloud Endpoint hoch

Ich erstelle eine Web-App nur mitHTML5 + Javascript + jQueryMobile und ich wollte eine datei zu einem hochladenGoogle App Engine Webanwendung mit aGoogle Cloud Endpoint, auch von mir erstellt.

Da ich beide Seiten kontrolliere, kann (und möchte) ich die einfachstmögliche Interaktion erstellen.

Für den Endpoint habe ich mir überlegt, eine Methode wie die folgende zu erstellen:

@ApiMethod(
  name = "uploadFile",
  path = "upload_file",
  httpMethod = HttpMethod.POST
)
public void uploadFile(File file) {
  //process the file
}

DieseFile Klasse könnte ein Feld enthaltenfileData vom Typ Blob oder Byte [] oder so ähnlich, wobei die Dateidaten dargestellt werden ... Etwas wie:

public class File {    
  private String fileName;
  private long fileSize;
  private Blob fileData;    
  //getters and setters
}

Die erste Frage wäre also:Was ist der am besten geeignete Typ für dieses Feld? fileData?

Und unter Berücksichtigung des für das Feld ausgewählten Typs,Wie kann ich die erforderliche POST-Anforderung für diese Endpunktmethode aus Javascript / jQuery erstellen?

Grundsätzlich muss ich dazu eine POST-Anfrage erstellenhttp://myappid.appspot.com/_ah/api/files/v1/upload_file Hinzufügen derFile Objekt in den POST-Daten.

Hinweis: Es tut mir leid, dass ich nichts für den Javascript-Code ausprobiert habe, da ich mit diesen Technologien überhaupt nicht vertraut bin. Ich würde mich über jede Hilfe freuen ...

Antworten auf die Frage(2)

Ihre Antwort auf die Frage