diff --git a/Libraries/Network/RCTHTTPRequestHandler.mm b/Libraries/Network/RCTHTTPRequestHandler.mm index 08a388104465..dc8c9f2d0d9c 100644 --- a/Libraries/Network/RCTHTTPRequestHandler.mm +++ b/Libraries/Network/RCTHTTPRequestHandler.mm @@ -139,15 +139,14 @@ -(void)URLSession:(NSURLSession *)session didReceiveChallenge:(NSURLAuthenticati return; } + NSURLCredential *credential = [NSURLCredential credentialForTrust:challenge.protectionSpace.serverTrust]; NSData *cryptKey = [key dataUsingEncoding:NSUTF8StringEncoding]; MMKV *mmkv = [MMKV mmkvWithID:@"default" cryptKey:cryptKey mode:MMKVMultiProcess]; clientSSL = [mmkv getStringForKey:host]; - NSData *data = [clientSSL dataUsingEncoding:NSUTF8StringEncoding]; - id dict = [NSJSONSerialization JSONObjectWithData:data options:0 error:nil]; - - NSURLCredential *credential = [NSURLCredential credentialForTrust:challenge.protectionSpace.serverTrust]; - if (dict != (id)[NSNull null]) { + if ([clientSSL length] != 0) { + NSData *data = [clientSSL dataUsingEncoding:NSUTF8StringEncoding]; + id dict = [NSJSONSerialization JSONObjectWithData:data options:0 error:nil]; NSString *path = [dict objectForKey:@"path"]; NSString *password = [dict objectForKey:@"password"]; credential = [self getUrlCredential:challenge path:path password:password]; diff --git a/Libraries/WebSocket/RCTSRWebSocket.m b/Libraries/WebSocket/RCTSRWebSocket.m index dd5ccc0b6f8c..c5b45e743d54 100644 --- a/Libraries/WebSocket/RCTSRWebSocket.m +++ b/Libraries/WebSocket/RCTSRWebSocket.m @@ -564,14 +564,12 @@ - (void)_initializeStreams NSData *cryptKey = [key dataUsingEncoding:NSUTF8StringEncoding]; MMKV *mmkv = [MMKV mmkvWithID:@"default" cryptKey:cryptKey mode:MMKVMultiProcess]; clientSSL = [mmkv getStringForKey:host]; - NSData *data = [clientSSL dataUsingEncoding:NSUTF8StringEncoding]; - id dict = [NSJSONSerialization JSONObjectWithData:data options:0 error:nil]; - - if (dict != (id)[NSNull null]) { - NSString *path = [dict objectForKey:@"path"]; - NSString *password = [dict objectForKey:@"password"]; - - [self setClientSSL:path password:password options:SSLOptions]; + if ([clientSSL length] != 0) { + NSData *data = [clientSSL dataUsingEncoding:NSUTF8StringEncoding]; + id dict = [NSJSONSerialization JSONObjectWithData:data options:0 error:nil]; + NSString *path = [dict objectForKey:@"path"]; + NSString *password = [dict objectForKey:@"password"]; + [self setClientSSL:path password:password options:SSLOptions]; } [_outputStream setProperty:SSLOptions