I am getting following error with self signed certificate
Error Domain=NSURLErrorDomain Code=-1200 "An SSL error has occurred and a secure connection to the server cannot be made.
while testing web-services for one of my demo app with
Note: before assuming its Duplicate, I would request please read it all the way,even same i have reported to apple dev forums
Using Alamofire Library
func testAlamofireGETRequest() -> Void { Alamofire.request(.GET, "https://filename.hostname.net/HelloWeb/service/greeting/john") .responseJSON { response in print("Response JSON: \(response.result.value)") } }
Using NSURLSession
func testNSURLSessionRequest() -> Void { let session = NSURLSession.sharedSession() let urlString = "https://filename.hostname.net/HelloWeb/service/greeting/john" let url = NSURL(string: urlString) let request = NSURLRequest(URL: url!) let dataTask = session.dataTaskWithRequest(request) { (data:NSData?, response:NSURLResponse?, error:NSError?) -> Void in print("done, error: \(error)") //Error Domain=NSURLErrorDomain Code=-1200 "An SSL error has occurred and a secure connection to the server cannot be made. } dataTask.resume() }
I spent 2 days with no luck :(
there are bunch of questions already posted but nothing worked for me
posted Alamofire git issue
My Info.pist file is updated for ATS settings this way
<key>NSAppTransportSecurity</key> <dict> <key>NSExceptionDomains</key> <dict> <key>filename.hostname.net</key> <dict> <key>NSExceptionRequiresForwardSecrecy</key> <false/> <key>NSExceptionAllowsInsecureHTTPLoads</key> <true/> <key>NSIncludesSubdomains</key> <true/> <key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key> <true/> </dict> </dict> </dict>
Meanwhile I am able to get response for
http://filename.hostname.net
and https://google.com
but not for https://filename.hostname.net
Can anyone please suggest me why I am not able to get this working after huge efforts?
Go to Apple menu > System Preferences > Date & Time > and make sure everything is correct. Check the Apple Status page for any issues with the App Store being offline. Wait a while (15 minutes or so), quit and relaunch the Mac App Store, and try the downloads/updates again.
At the command-line in OS X, run the following:
nscurl --ats-diagnostics https://filename.hostname.net --verbose
This will tell you what combinations of ATS settings will and will not permit iOS to access your site, and should point you towards what is wrong with your site.
It could be one or more of the following
Apple has released the full requirements list for the App Transport Security.
Turned out that we were working with TLS v1.2 but were missing some of the other requirements.
Here's the full check list:
TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With