Datei hochladen - Android zu Google App Engine (PHP)
Von meiner Android-App zu Google App Engine veröffentliche ich eine ZIP-Datei. Ich poste auch eine Zeichenfolge. Wenn das PHP-Skript von Google App Engine ausgeführt wird, speichere ich den Wert von $ _FILES im Protokoll von ...
ob_start();
var_dump($_FILES);
$result = ob_get_clean();
syslog(LOG_DEBUG, "VAR DUMP\n" . $result . "\n");
Ich protokolliere auch den Wert der Zeichenfolge. Das Protokoll enthält die Zeichenfolgenausgabe, aber nicht die Ausgabe $ _FILES. Ich leseDIESER LIN, aber das scheint Web zu betreffen. Mein Android-Code zum POST der Datei lautet wie folgt ...
private void postExamplesZipToDrive(File file_zip){
RequestParams request_params = new RequestParams();
request_params.put("test", "Came thru");
//
try{ request_params.put("file_zip", file_zip); }
catch(FileNotFoundException e){
Log.e("postExamplesZipToDrive", "File not found");
Toast.makeText(this, "Unable to upload.", Toast.LENGTH_SHORT).show();
return;
}
AsyncHttpClient async_http_client = new AsyncHttpClient();
async_http_client.post(UPLOAD_URL, request_params, new JsonHttpResponseHandler(){
@Override
public void onSuccess(int code_status, Header[] headers, JSONArray success) {
Toast.makeText(getApplicationContext(), "" + code_status, Toast.LENGTH_SHORT).show();
super.onSuccess(code_status, headers, success);
}
@Override
public void onFailure(int code_status, Header[] headers, String string_response, Throwable throwable){
Toast.makeText(getApplicationContext(), "" + code_status, Toast.LENGTH_SHORT).show();
Log.e("onFailure", code_status + "\n" + string_response);
}
});
}
Meine Frage ist, POSTe ich die ZIP-Datei richtig? Wie erfasse ich die hochgeladenen Dateien, die normalerweise in $ _FILES gespeichert sind?