diff --git a/React/Base/RCTJavaScriptLoader.mm b/React/Base/RCTJavaScriptLoader.mm index 8fd439cb1..09fd6c089 100755 --- a/React/Base/RCTJavaScriptLoader.mm +++ b/React/Base/RCTJavaScriptLoader.mm @@ -284,16 +284,17 @@ static void attemptAsynchronousLoadOfBundleAtURL(NSURL *scriptURL, RCTSourceLoad // Validate that the packager actually returned javascript. NSString *contentType = headers[@"Content-Type"]; - if (![contentType isEqualToString:@"application/javascript"] && - ![contentType isEqualToString:@"text/javascript"]) { - NSString *description = [NSString stringWithFormat:@"Expected Content-Type to be 'application/javascript' or 'text/javascript', but got '%@'.", contentType]; + NSString *mimeType = [[contentType componentsSeparatedByString:@";"] firstObject]; + if (![mimeType isEqualToString:@"application/javascript"] && + ![mimeType isEqualToString:@"text/javascript"]) { + NSString *description = [NSString stringWithFormat:@"Expected MIME-Type to be 'application/javascript' or 'text/javascript', but got '%@'.", mimeType]; error = [NSError errorWithDomain:@"JSServer" code:NSURLErrorCannotParseResponse userInfo:@{ NSLocalizedDescriptionKey: description, @"headers": headers, @"data": data - }]; + }]; onComplete(error, nil); return; }