Как получить параметры POST в методе NanoHttpd Serve. Это мой HTML форму нижеЗагрузка файла на сервер nanoHttpd Android
<form name="a" enctype="multipart/form-data\ method="post" >"
<input type="file" name"file" multiple/>"+
<input type="hidden" name="extradata" value="test"/>
<input type="submit" value="upload" >
</form>
Im не в состоянии получить даже длину содержимого для файла, который представлен через форму
public Response serve(IHTTPSession session) {
Map<String, String> params = session.getParms();
Map<String, String> files = new HashMap<String, String>();
if (Method.POST.equals(session.getMethod()) || Method.PUT.equals(session.getMethod())) {
try {
session.parseBody(files);
StringBuilder builder = new StringBuilder();
builder.append("| conLen " + (session.getHeaders().get("content-length")) + "| \n");
Set keys = files.keySet();
for (Object key : keys) {
builder.append(" key: " + key + " value: " + files.get(key) + "\n");
}
return new Response(builder.toString());
} catch (Exception ex) {
Log.d("server", ex.toString());
}
}
}
}
И ответ от этого кода:
conLen null ключ: postData значение: ------ WebKitFormBoundaryt5gZYrmlLiPVa6aM Content-Disposition: form-data; имя = "ExtraData" тест ------ WebKitFormBoundaryt5gZYrmlLiPVa6aM--
Пожалуйста, покажите полную функцию 'serve()'. – greenapps
Используйте другой метод 'serve()'. Тот, который поставляется со многими параметрами. Работает намного проще. – greenapps