Better fix for Fix NanoHTTP 2.3.1 bug "BAD REQUEST"...
[louyapi.git] / src / main / java / de / cweiske / ouya / louyapi / HttpServer.java
index 024a1b841ca074e91f4e245bb2144c13879d383b..568280519167011cff731185fa1fe1c7163a7385 100644 (file)
@@ -7,6 +7,8 @@ import android.util.Log;
 
 import java.io.IOException;
 import java.io.InputStream;
+import java.util.HashMap;
+import java.util.Map;
 
 import fi.iki.elonen.NanoHTTPD;
 
@@ -34,6 +36,17 @@ public class HttpServer extends NanoHTTPD {
             path = path.substring(1);
         }
 
+        if (session.getMethod() == Method.POST || session.getMethod() == Method.PUT) {
+            Map<String, String> parameters = new HashMap<String, String>();
+            try {
+                session.parseBody(parameters);
+            } catch (Exception e) {
+                //we do not care about the content
+                //we only parse the body to prevent errors, see
+                // https://github.com/NanoHttpd/nanohttpd/issues/356
+            }
+        }
+
         InputStream content;
 
         if (path.equals("/api/v1/status") || path.equals("/generate_204")) {