Das Zertifikat für diesen server ist ungültig
Ich weiß, dass wenn ich folgenden nsurlconnectiondelegate es behoben wird
– Verbindung:willSendRequestForAuthenticationchallenge: –
Verbindung:canAuthenticateAgainstProtectionspace
Aber ich bin versucht,
sendAsynchronousRequest:queue:completionHandler:
So erhalten Sie nicht den Rückruf. Ich schaute in den apple-docs es folgenden sagen
Wenn eine Authentifizierung erforderlich ist, um zum download der Anforderung, die erforderlichen Anmeldeinformationen angegeben werden muss, als Teil der URL. Wenn die Authentifizierung fehlschlägt, oder die Anmeldeinformationen fehlen, die Verbindung wird versuchen, weiterhin ohne Anmeldeinformationen.
Ich konnte nicht herausfinden, wie das zu tun. Als ich aufblickte, die ich habe ist diese private call
+(void)setAllowsAnyHTTPSCertificate:(BOOL)inAllow forHost:(NSString *)inHost;
Jede Idee, wie dies zu tun?
Folgenden ist die Fehlermeldung die ich bekomme
Das Zertifikat für diesen server ist ungültig. Sie könnte die Verbindung zu
ein server, der er vorgibt zu sein “ - Beispiel.com=0x8b34da0
{NSErrorFailingURLStringKey=https://example.com/test/,
NSLocalizedRecoverySuggestion=möchten Sie die Verbindung zum server
eh?, NSErrorFailingURLKey=https://example.com/test/,
NSLocalizedDescription=Das Zertifikat für diesen server ist ungültig. Sie
könnte die Verbindung zu einem server, der er vorgibt zu sein "example.com"
das könnte Ihre vertraulichen Daten in Gefahr.,
NSUnderlyingError=0xa26c1c0 "Das Zertifikat für diesen server ist
ungültig. Sie könnte die Verbindung zu einem server, der vorgibt zu sein
"example.com" das könnte Ihre vertraulichen Daten gefährdet.",
NSURLErrorFailingURLPeerTrustErrorkey=
Du musst angemeldet sein, um einen Kommentar abzugeben.
können Sie es nicht reparieren mit der Art, wie Sie versuchen
alle nicht gut. CFNetwork müsste OK sein für apple, aber die anderen 2 Methoden nicht auch appstore-sicher
Besser die server behoben. Das ist die einfachste und SAUBERSTE
Den webserver, die Sie verwenden, ist zu Fragen für die Server-Trust-Authentifizierung, müssen Sie richtig reagieren mit den geeigneten Maßnahmen. Sie implementieren müssen, um
connection:willSendRequestForAuthenticationChallenge:
delegate-Methode, und verwenden Sie SecTrustRef ihn zu authentifizieren.Mehr Informationen finden Sie hier:-
https://developer.apple.com/library/ios/technotes/tn2232/_index.html
Dies war mein code zum Update-Fehler:
Wenn Sie
AFNetworking
, können Sie diesen code verwenden:(Nur als temp-client-side-Lösung!)
Dieses Problem kann nicht behoben werden mit der Art, wie Sie versuchen, mit Blöcken. Sie müssen die Delegierten und implementieren der Authentifizierung Herausforderung Delegierten zur Umgehung der Zertifikatsprüfung.
Beste Lösung ist, um entweder eine richtige Zertifikat (stellen Sie sicher, es ist nicht self-signed) oder ändern Sie das Protokoll auf HTTP wenn Sie in Ordnung mit ihm.
In meinem Fall, ist dieser Fehler aufgetreten, aufgrund meiner firewall blockiert den gewünschten url. es funktionierte gut, nach entfernen von firewall-Einschränkungen
Ist ein Zertifikat Fehler. Sie müssen Ihre Einstellungen ändern, so dass Ihr Programm/os ignoriert das Zertifikat, oder fügen Sie die url/Zertifikat einer vertrauenswürdigen Liste.
Sorry, dass ist die Authentifizierung, Zertifikat-Authentifizierung. Ich nahm einen Blick, und ich fand diesen Artikel.
Nicht sicher, ob es das Problem zu lösen, aber es ist im Grunde besagt, dass Sie nicht für den Fall der Verbindung zu einer Website, wie ein Zertifikat in der Dokumentation.
http://www.cocoanetics.com/2009/11/ignoring-certificate-errors-on-nsurlrequest/
Überprüfen Sie bitte die folgenden link.
https://discussions.apple.com/thread/4912924?start=0&tstart=0