Это простой способ публикации файлов с Android.
String url = "http://yourserver.com/upload.php";
File file = new File("myfileuri");
try {
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost(url);
InputStreamEntity reqEntity = new InputStreamEntity(new FileInputStream(file), -1);
reqEntity.setContentType("binary/octet-stream");
reqEntity.setChunked(true); // Send in multiple parts if needed
httppost.setEntity(reqEntity);
HttpResponse response = httpclient.execute(httppost);
//Do something with response...
} catch (Exception e) {
e.printStackTrace();
}
Что я хочу сделать, это добавить в мой запрос больше переменных POST
. Как мне это сделать? При загрузке простых строк в запрос POST
мы используем URLEncodedFormEntity
.
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
В то время как во время загрузки файлов мы используем InputStreamEntity
.
Кроме того, как я могу специально загрузить этот файл в $_FILES['myfilename']
?