From af570d76f4165fd746d4d63c0af454566d0d4196 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Neven=20Jacmenovi=C4=87?= Date: Tue, 6 Nov 2018 21:38:09 +0100 Subject: [PATCH 1/3] updated MIME types --- src/android/NanoHTTPD.java | 53 +++++++++++++++++++++----------------- 1 file changed, 29 insertions(+), 24 deletions(-) diff --git a/src/android/NanoHTTPD.java b/src/android/NanoHTTPD.java index 60822a5..dfa0414 100644 --- a/src/android/NanoHTTPD.java +++ b/src/android/NanoHTTPD.java @@ -1104,30 +1104,35 @@ else if ( len < 1024 * 1024 ) static { StringTokenizer st = new StringTokenizer( - "css text/css "+ - "htm text/html "+ - "html text/html "+ - "xml text/xml "+ - "txt text/plain "+ - "asc text/plain "+ - "gif image/gif "+ - "jpg image/jpeg "+ - "jpeg image/jpeg "+ - "png image/png "+ - "mp3 audio/mpeg "+ - "m3u audio/mpeg-url " + - "mp4 video/mp4 " + - "ogv video/ogg " + - "flv video/x-flv " + - "mov video/quicktime " + - "swf application/x-shockwave-flash " + - "js application/javascript "+ - "pdf application/pdf "+ - "doc application/msword "+ - "ogg application/x-ogg "+ - "zip application/octet-stream "+ - "exe application/octet-stream "+ - "class application/octet-stream " ); + "css text/css "+ + "htm text/html "+ + "html text/html "+ + "xml text/xml "+ + "java java=text/x-java-source "+ + "md text/plain "+ + "txt text/plain "+ + "asc text/plain "+ + "gif image/gif "+ + "jpg image/jpeg "+ + "jpeg image/jpeg "+ + "png image/png "+ + "svg image/svg+xml "+ + "mp3 audio/mpeg "+ + "m3u audio/mpeg-url " + + "mp4 video/mp4 " + + "ogv video/ogg " + + "flv video/x-flv " + + "mov video/quicktime " + + "swf application/x-shockwave-flash " + + "js application/javascript "+ + "pdf application/pdf "+ + "doc application/msword "+ + "ogg application/x-ogg "+ + "zip application/octet-stream "+ + "exe application/octet-stream "+ + "class application/octet-stream "+ + "m3u8 application/vnd.apple.mpegurl "+ + "ts video/mp2t " ); while ( st.hasMoreTokens()) theMimeTypes.put( st.nextToken(), st.nextToken()); } From 150f0fa95c36ac9e3262fed2a13b811af86e6370 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Neven=20Jacmenovi=C4=87?= Date: Mon, 26 Nov 2018 12:32:45 +0100 Subject: [PATCH 2/3] ios svg fix --- src/ios/CocoaHttpd/Responses/HTTPFileResponse.m | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/ios/CocoaHttpd/Responses/HTTPFileResponse.m b/src/ios/CocoaHttpd/Responses/HTTPFileResponse.m index 720ff22..0de8935 100644 --- a/src/ios/CocoaHttpd/Responses/HTTPFileResponse.m +++ b/src/ios/CocoaHttpd/Responses/HTTPFileResponse.m @@ -242,4 +242,13 @@ - (void)dealloc } + +- (NSDictionary *)httpHeaders { + //HTTPLogTrace(); + if ([[filePath pathExtension] isEqualToString:@"svg"]) { + return [NSDictionary dictionaryWithObject:@"image/svg+xml" forKey:@"Content-Type"]; + } + return [NSDictionary new]; +} + @end From ace311e3c42dfad0acac5241f1c461367b85320e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Neven=20Jacmenovi=C4=87?= Date: Thu, 10 Sep 2020 11:11:55 +0200 Subject: [PATCH 3/3] send Access-Control-Allow-Origin on IOS and ANDROID --- src/android/NanoHTTPD.java | 4 ++++ src/ios/CocoaHttpd/HTTPConnection.m | 3 +++ 2 files changed, 7 insertions(+) diff --git a/src/android/NanoHTTPD.java b/src/android/NanoHTTPD.java index dfa0414..2d29a44 100644 --- a/src/android/NanoHTTPD.java +++ b/src/android/NanoHTTPD.java @@ -1093,6 +1093,10 @@ else if ( len < 1024 * 1024 ) } res.addHeader( "Accept-Ranges", "bytes"); // Announce that the file server accepts partial content requestes + + // Add CORS header + res.addHeader( "Access-Control-Allow-Origin", "*"); + return res; } diff --git a/src/ios/CocoaHttpd/HTTPConnection.m b/src/ios/CocoaHttpd/HTTPConnection.m index da7e84d..6a8d5bd 100644 --- a/src/ios/CocoaHttpd/HTTPConnection.m +++ b/src/ios/CocoaHttpd/HTTPConnection.m @@ -1200,6 +1200,9 @@ - (void)sendResponseHeadersAndBody } } + // Add CORS header + [response setHeaderField:@"Access-Control-Allow-Origin" value:@"*"]; + // Add optional lastModified header if ([httpResponse respondsToSelector:@selector(lastModified)]) {