Se connecter à un Serveur avec un Certificat non Valide à l'aide de NSURLSession (swift2,xcode7,ios9)

Je suis en utilisant Xcode 7, Swift 2, et iOS9. Je veux me connecter à un service web à l'aide de NSURLSession mais je reçois le message d'erreur suivant lorsque j'essaie de me connecter:

2015-10-13 16:07:33.595 XCTRunner[89220:4520715] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9813)
2015-10-13 16:07:33.604 XCTRunner[89220:4520571] Error with connection, details: Error Domain=NSURLErrorDomain Code=-1202 "The certificate for this server is invalid. You might be connecting to a server that is pretending to be “domainapi.com” which could put your confidential information at risk." UserInfo={NSURLErrorFailingURLPeerTrustErrorKey=<SecTrustRef: 0x7fac7b6facc0>, NSLocalizedRecoverySuggestion=Would you like to connect to the server anyway?,

Voici mon code:

func request( dataPost : String, successHandler: (response: String) -> Void)-> String {
        let destination:String =  "https://domainapi.com:8743/WebService/sendData"
        let request = NSMutableURLRequest(URL: NSURL(string: destination as String)!)
        request.HTTPMethod = "POST"
        let postString = dataPost
        request.HTTPBody = postString.dataUsingEncoding(NSUTF8StringEncoding)
        request.setValue("0", forHTTPHeaderField: "Content-Length")
        request.setValue("application/xml", forHTTPHeaderField: "Content-Type")
        request.setValue("gzip,deflate", forHTTPHeaderField: "Accept-Encoding")
        request.setValue("Keep-Alive", forHTTPHeaderField: "Connection")
        NSLog("Body is: %@", request.HTTPBody!)
        NSLog("Request is: %@", request.allHTTPHeaderFields!)
        NSLog("URL is: %@", destination)

        let task = NSURLSession.sharedSession().dataTaskWithRequest(request) {
            data, response, error in


            if error != nil {
                NSLog("Error with connection, details: %@", error!)
                return
            }

            let responseString = NSString(data: data!, encoding: NSUTF8StringEncoding)

            successHandler(response: responseString as String!);
            NSLog("Data received: %@", data!)

        }

        task.resume()
        return "worked"
    }
    func viewDidLoad() {
        let dataPost : String = "<webservices>xml data sending</webservices>"
        request(dataPost, successHandler: {
            (response) in
            let text = response
            print(text)
        });

J'ai regardé dans NSURLAuthenticationChallenge mais je n'arrive pas à comprendre qu'avec le code que j'ai actuellement en place. Donc ma question est comment puis-je me connecter au serveur de toute façon? J'ai déjà essayé d'ajouter le domaine à mon NSAppTransportSecurity en Info.plist mais cela ne fonctionne pas. Tournant sur NSAllowsArbitraryLoads ne fonctionne pas non plus. Toute aide serait appréciée.

Découvrez cette question DONC: stackoverflow.com/questions/933331/...
c'est à l'aide de NSURLConnection qui est obsolète dans iOS8. Je voudrais utiliser NSURLSession si possible.
Le AFNetworking bibliothèque offre un excellent support pour cela, je vous recommande de le vérifier.

OriginalL'auteur cakes88 | 2015-10-14