@Override public Response serve(IHTTPSession session) { Map<String, List<String>> decodedQueryParameters = decodeParameters(session.getQueryParameterString()); StringBuilder sb = new StringBuilder(); sb.append("<html>"); sb.append("<head><title>Debug Server</title></head>"); sb.append("<body>"); sb.append("<h1>Debug Server</h1>"); sb.append("<p><blockquote><b>URI</b> = ") .append(String.valueOf(session.getUri())) .append("<br />"); sb.append("<b>Method</b> = ") .append(String.valueOf(session.getMethod())) .append("</blockquote></p>"); sb.append("<h3>Headers</h3><p><blockquote>") .append(toString(session.getHeaders())) .append("</blockquote></p>"); sb.append("<h3>Parms</h3><p><blockquote>") .append(toString(session.getParms())) .append("</blockquote></p>"); sb.append("<h3>Parms (multi values?)</h3><p><blockquote>") .append(toString(decodedQueryParameters)) .append("</blockquote></p>"); try { Map<String, String> files = new HashMap<String, String>(); session.parseBody(files); sb.append("<h3>Files</h3><p><blockquote>") .append(toString(files)) .append("</blockquote></p>"); } catch (Exception e) { e.printStackTrace(); } sb.append("</body>"); sb.append("</html>"); return newFixedLengthResponse(sb.toString()); }
/** * Override this to customize the server. * * <p> * * <p>(By default, this delegates to serveFile() and allows directory listing.) * * @param session The HTTP session * @return HTTP response, see class Response for details */ public Response serve(IHTTPSession session) { Map<String, String> files = new HashMap<String, String>(); Method method = session.getMethod(); if (Method.PUT.equals(method) || Method.POST.equals(method)) { try { session.parseBody(files); } catch (IOException ioe) { return new Response( Response.Status.INTERNAL_ERROR, MIME_PLAINTEXT, "SERVER INTERNAL ERROR: IOException: " + ioe.getMessage()); } catch (ResponseException re) { return new Response(re.getStatus(), MIME_PLAINTEXT, re.getMessage()); } } Map<String, String> parms = session.getParms(); parms.put(QUERY_STRING_PARAMETER, session.getQueryParameterString()); return serve(session.getUri(), method, session.getHeaders(), parms, files); }