2016-04-08 17 views
0

Hızlı iOS uygulamam, aerogear birleşik sunucuyla uzaktan bildirim için kayıt yapamaz, sunucudaki sertifikaya benzeyen hataları kendiliğinden imzalı bir şekilde verebilirsiniz. Bir sertifika yetkilisi tarafından imzalanmış düzenli bir güvenilirdir.Neden IOS SSL anlaşması diğer uçta güvenilir bir sertifika ile başarısız olur?

bu kayıt kendisi aerogear itme sunucu örneklere göre yapılır temsilci didRegisterForRemoteNotificationsWithDeviceToken görüşme sırasında gerçekleşir: Burada

 let registration = AGDeviceRegistration(serverURL: NSURL(string: dynConfig.pushURL)); 
      registration.registerWithClientInfo({ (clientInfo:AGClientDeviceInformation!) -> Void in 
... 

2016-04-08 16:22:35.158 Myapp[284:35797] Registration :https://server.mydomain.net:8443/ag-push/ 
2016-04-08 16:24:23.412 Myapp[284:35797] OK 
2016-04-08 16:24:23.419 Myapp[284:35797] _BSMachError: (os/kern) invalid capability (20) 
2016-04-08 16:24:23.420 Myapp[284:35797] _BSMachError: (os/kern) invalid name (15) 
2016-04-08 16:24:23.553 Myapp[284:35797] OK 
2016-04-08 16:24:23.558 Myapp[284:35797] OK 
2016-04-08 16:24:23.574 Myapp[284:36046] CFNetwork SSLHandshake failed (-9824) 
2016-04-08 16:24:23.615 Myapp[284:36046] CFNetwork SSLHandshake failed (-9824) 
2016-04-08 16:24:23.662 Myapp[284:36046] CFNetwork SSLHandshake failed (-9824) 
2016-04-08 16:24:23.713 Myapp[284:36046] CFNetwork SSLHandshake failed (-9824) 
2016-04-08 16:24:23.716 Myapp[284:36046] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9824) 
2016-04-08 16:24:38.229 Myapp[284:35797] Push registration error :Error Domain=NSURLErrorDomain Code=-1200 "Une erreur SSL s’est produite et il est impossible d’établir une connexion sécurisée avec le serveur." UserInfo={_kCFStreamErrorCodeKey=-9824, NSLocalizedRecoverySuggestion=Souhaitez-vous tout de même vous connecter au serveur ?, NSUnderlyingError=0x12cdf9ee0 {Error Domain=kCFErrorDomainCFNetwork Code=-1200 "(null)" UserInfo={_kCFStreamPropertySSLClientCertificateState=0, _kCFNetworkCFStreamSSLErrorOriginalValue=-9824, _kCFStreamErrorDomainKey=3, _kCFStreamErrorCodeKey=-9824}}, NSLocalizedDescription=Une erreur SSL s’est produite et il est impossible d’établir une connexion sécurisée avec le serveur., NSErrorFailingURLKey=https://server.mydomain.net:8443/ag-push/rest/registry/device, NSErrorFailingURLStringKey=https://server.mydomain.net:8443/ag-push/rest/registry/device, _kCFStreamErrorDomainKey=3} 

cevap

0

API çağrısı gibi görünüyor hata izidir Uygulama Aktarım Güvenliği tarafından engellenmelidir. Ben tüm diğer olanları vardı

<key>NSAppTransportSecurity</key> 
<dict> 
    <key>NSExceptionDomains</key> 
    <dict> 
     <key>mydomain.net</key> 
     <dict> 
      <key>NSExceptionAllowsInsecureHTTPLoads</key> 
      <true/> 
      <key>NSIncludesSubdomains</key> 
      <true/> 
      <key>NSExceptionRequiresForwardSecrecy</key> 
      <false/> 
     </dict> 
    </dict> 
</dict> 
+0

ancak NSExceptionRequiresForwardSecrecy: sizin .plist dosyasına aşağıdaki eklemeyi deneyin. Düzeltir. Bunu önlemek için sunucu tarafında ne değişiklik yapıldığına dair ipucu var mı? –

+0

Eğer Apache ile çalışıyorsanız, buraya bir göz atın: https://www.digicert.com/ssl-support/ssl-enabling-perfect-forward-secrecy.htm – DAN

+0

Aslında, vahşi ve nginx. –

İlgili konular