Allow to customiz mime types used by GCDWebServerFileResponse

This commit is contained in:
Pierre-Olivier Latour
2017-06-24 09:54:09 -07:00
parent a013f9cebb
commit c35d514b08
4 changed files with 22 additions and 10 deletions

View File

@ -166,12 +166,15 @@ NSString* GCDWebServerDescribeData(NSData* data, NSString* type) {
return [NSString stringWithFormat:@"<%lu bytes>", (unsigned long)data.length];
}
NSString* GCDWebServerGetMimeTypeForExtension(NSString* extension) {
NSDictionary* overrides = @{@"css": @"text/css"};
NSString* GCDWebServerGetMimeTypeForExtension(NSString* extension, NSDictionary* overrides) {
NSDictionary* builtInOverrides = @{@"css": @"text/css"};
NSString* mimeType = nil;
extension = [extension lowercaseString];
if (extension.length) {
mimeType = [overrides objectForKey:extension];
if (mimeType == nil) {
mimeType = [builtInOverrides objectForKey:extension];
}
if (mimeType == nil) {
CFStringRef uti = UTTypeCreatePreferredIdentifierForTag(kUTTagClassFilenameExtension, (__bridge CFStringRef)extension, NULL);
if (uti) {