Ich schreibe eine iPhone-Anwendung und möchte eine Verbindung zu einem "HTTPS"-Server herstellen, um einige Informationen zu erhalten. Allerdings erhalte ich in der Konsole die folgende Fehlermeldung
NSUnderlyingError = Fehlerbereich=kCFErrorDomainCFNetwork Code=-1202 UserInfo=0x3e95cf0 "Das Zertifikat für diesen Server ist ungültig. Sie Sie stellen möglicherweise eine Verbindung zu einem Server her, der vorgibt, "example.com" zu sein Dies könnte ein Risiko für Ihre vertraulichen Daten darstellen."; }
Wie kann ich dem Zertifikat vertrauen und den http-Statuscode 200 erhalten?
Der folgende Code lautet wie folgt.
NSMutableURLRequest *request_get2 = [[[NSMutableURLRequest alloc] init] autorelease];
[request_get2 setURL:[NSURL URLWithString:@"https://www.example.com"]];
[request_get2 setHTTPMethod:@"GET"];
[request_get2 setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
//[request_get2 setValue:@"text/html; charset=UTF-8" forHTTPHeaderField:@"Content-Type"];
[request_get2 setValue:@"https://www.example.com" forHTTPHeaderField:@"Referer"];
[request_get2 setHTTPShouldHandleCookies:YES];
// cookiesString is in format "cookieName=cookieValue;"
[request_get2 setValue: (NSString *) cookiesString forHTTPHeaderField:@"Cookie"];
// doGet - response
NSHTTPURLResponse *response_get2 = nil; // it change from 'NSURLRespaonse' to 'NSHTTPURLResponse'
NSError *error_get2 = nil;
NSData *responseData_get2 = [NSURLConnection sendSynchronousRequest:request_get2 returningResponse:&response_get2 error:&error_get2];
NSString *data_get2 = [[NSString alloc]initWithData:responseData_get2 encoding:NSUTF8StringEncoding];
if (!error_get2) {
NSString *responseURL_get2 = [[response_get2 URL] absoluteString]; // null value
NSString *responseTextEncodingName_get2 = [response_get2 textEncodingName]; // null value
NSString *responseMIMEType_get2 = [response_get2 MIMEType]; // null value
NSUInteger *responseStatusCode_get2 = [response_get2 statusCode]; //[responseStatusCode intValue]; // the status code is 0
}
else {
NSLog(@"\nsomething went wrong: %@\n", [error_get2 userInfo]); // got the error in here
}