Ich verwende Swift 3 und einen Web-Service zum ersten Mal zu treffen. Mein Web-Service läuft über HTTPS und ich möchte mit Verschlüsselung an Ort und Stelle testen.Zertifikat für diesen Server ist ungültig für selbstsigniertes Cert auf swift 3
Hier ist mein Code so weit:
let config = URLSessionConfiguration.default // Session Configuration
let session = URLSession(configuration: config) // Load configuration into Session
let url = URL(string: webService.getLoginUrl())!
let task = session.dataTask(with: url, completionHandler: {
(data, response, error) in
if error == nil {
do {
if let json =
try JSONSerialization.jsonObject(with: data!, options: .allowFragments) as? [String: Any]{
//Implement your logic
print(json)
}
} catch {
print("error in JSONSerialization")
}
} else {
print(error!.localizedDescription)
}
})
task.resume()
Als ich dies gegen meinen Testserver laufen, die selbst signiertes ist, erhalte ich:
The certificate for this server is invalid. You might be connecting to a server that is pretending to be “10.0.0.51” which could put your confidential information at risk.
Also, was ich tun möchte akzeptiert alle Zertifikate beim Testen, aber nicht in der Produktion.
http://www.byteblocks.com/Post/Use-self-signed-SSL-certificate-in-iOS-application https://github.com/socketio/socket.io-client-swift/issues/326
aber diese scheinen predate swift 3.
Wie löse ich dieses Problem:
Ich habe ein paar Websites, wie gefunden?
Was ist WebService? – Kingalione