diff options
author | Jarno Elonen <elonen@iki.fi> | 2015-08-22 21:01:24 +0300 |
---|---|---|
committer | Jarno Elonen <elonen@iki.fi> | 2015-08-22 21:01:24 +0300 |
commit | f019744cc72718e723302358802c80136c42f8c8 (patch) | |
tree | 7015ac7c4c0a3f5f6c19ea0852e534d982112298 /webserver/src/main/java/fi/iki/elonen/SimpleWebServer.java | |
parent | 504cf71fb77ee34a9b37a632664c58f89ab1984e (diff) | |
download | nanohttpd-f019744cc72718e723302358802c80136c42f8c8.tar.gz |
Fixed SimpleWebServer, bumped version
Diffstat (limited to 'webserver/src/main/java/fi/iki/elonen/SimpleWebServer.java')
-rw-r--r-- | webserver/src/main/java/fi/iki/elonen/SimpleWebServer.java | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/webserver/src/main/java/fi/iki/elonen/SimpleWebServer.java b/webserver/src/main/java/fi/iki/elonen/SimpleWebServer.java index 29ab5ce..0ddc21c 100644 --- a/webserver/src/main/java/fi/iki/elonen/SimpleWebServer.java +++ b/webserver/src/main/java/fi/iki/elonen/SimpleWebServer.java @@ -386,6 +386,12 @@ public class SimpleWebServer extends NanoHTTPD { return msg.toString(); } + public static Response newFixedLengthResponse(IStatus status, String mimeType, String message) { + Response response = NanoHTTPD.newFixedLengthResponse(status, mimeType, message); + response.addHeader("Accept-Ranges", "bytes"); + return response; + } + private Response respond(Map<String, String> headers, IHTTPSession session, String uri) { // Remove URL arguments uri = uri.trim().replace(File.separatorChar, '/'); @@ -415,7 +421,6 @@ public class SimpleWebServer extends NanoHTTPD { uri += "/"; Response res = newFixedLengthResponse(Response.Status.REDIRECT, NanoHTTPD.MIME_HTML, "<html><body>Redirected: <a href=\"" + uri + "\">" + uri + "</a></body></html>"); - res.addHeader("Accept-Ranges", "bytes"); res.addHeader("Location", uri); return res; } @@ -427,8 +432,7 @@ public class SimpleWebServer extends NanoHTTPD { if (indexFile == null) { if (f.canRead()) { // No index file, list the directory if it is readable - Response res = newFixedLengthResponse(Response.Status.OK, NanoHTTPD.MIME_HTML, listDirectory(uri, f)); - res.addHeader("Accept-Ranges", "bytes"); + return newFixedLengthResponse(Response.Status.OK, NanoHTTPD.MIME_HTML, listDirectory(uri, f)); } else { return getForbiddenResponse("No directory listing."); } @@ -531,7 +535,6 @@ public class SimpleWebServer extends NanoHTTPD { // would return range from file // respond with not-modified res = newFixedLengthResponse(Response.Status.NOT_MODIFIED, mime, ""); - res.addHeader("Accept-Ranges", "bytes"); res.addHeader("ETag", etag); } else { if (endAt < 0) { @@ -558,14 +561,12 @@ public class SimpleWebServer extends NanoHTTPD { // 4xx responses are not trumped by if-none-match res = newFixedLengthResponse(Response.Status.RANGE_NOT_SATISFIABLE, NanoHTTPD.MIME_PLAINTEXT, ""); res.addHeader("Content-Range", "bytes */" + fileLen); - res.addHeader("Accept-Ranges", "bytes"); res.addHeader("ETag", etag); } else if (range == null && headerIfNoneMatchPresentAndMatching) { // full-file-fetch request // would return entire file // respond with not-modified res = newFixedLengthResponse(Response.Status.NOT_MODIFIED, mime, ""); - res.addHeader("Accept-Ranges", "bytes"); res.addHeader("ETag", etag); } else if (!headerIfRangeMissingOrMatching && headerIfNoneMatchPresentAndMatching) { // range request that doesn't match current etag @@ -573,7 +574,6 @@ public class SimpleWebServer extends NanoHTTPD { // respond with not-modified res = newFixedLengthResponse(Response.Status.NOT_MODIFIED, mime, ""); - res.addHeader("Accept-Ranges", "bytes"); res.addHeader("ETag", etag); } else { // supply the file |