2012-07-19 16 views
7

Tengo un problema similar al siguiente: Apple Push Notification in Production Environment : Unable to get local issuer certificate pero en mi computadora local. he seguido este tutorial: http://www.raywenderlich.com/3443/apple-push-notification-services-tutorial-part-12 pero en este pasoVerificar código de retorno: 20 (no se puede obtener el certificado de emisor local)

openssl s_client -connect gateway.sandbox.push.apple.com:2195 -cert PushChatCert.pem -key PushChatKey.pem 

Dice:

(Una gran cantidad de los números y letras) Verificar código de retorno: 20 (incapaz de obtener el certificado emisor local)

¿Cuál es el problema? Gracias

Respuesta

15

El problema es que está utilizando el servidor APNS "sandbox" que se utiliza para el desarrollo.

Para probar los certificados de producción, debe conectarse al servidor APNS de producción. Usted puede utilizar la dirección:

gateway.push.apple.com:2195 en lugar de gateway.sandbox.push.apple.com:2195

+0

Tengo el mismo problema, pero estoy usando certificados de desarrollo a través de @gabcas – GangstaGraham

+0

Asegúrese de haber seguido los [pasos correctos] (http://www.raywenderlich.com/3443/apple-push-notification-services -tutorial-parte-12) para crear/exportar los certificados de desarrollo. Además, podría probar los certificados de producción y el servidor de producción. Háganos saber si encuentra que hubo otra causa del error. – GabCas

+0

Resultó que el error era que estaba usando una contraseña con la clave privada, pensé que era necesario, ya que Keychain Access pidió una, pero cuando creé una nueva clave privada sin una contraseña, todo funcionó. :) – GangstaGraham

14

Esto no es un problema. Esto, de hecho, es la confirmación de que su certificado está funcionando. Si se llegara a no funcionar usted consigue algo como esto:

unable to load client certificate private key file 
<XXXXX>:error:<XXXX>:digital envelope routines:EVP_DecryptFinal_ex:bad decrypt:evp_enc.c:539: 
<XXXXX>:error:<XXXX>:PKCS12 routines:PKCS12_pbe_crypt:pkcs12 cipherfinal error:p12_decr.c:104: 
<XXXXX>:error:<XXXX>:PKCS12 routines:PKCS12_item_decrypt_d2i:pkcs12 pbe crypt error:p12_decr.c:130: 
<XXXXX>:error:<XXXX>:PEM routines:PEM_READ_BIO_PRIVATEKEY:ASN1 lib:pem_pkey.c:132: 

ver este tutorial para un ejemplo http://lessons.runrev.com/s/lessons/m/4069/l/53405-how-do-i-use-push-notifications-with-ios

O si desea escucharlo de rayos http://www.raywenderlich.com/forums/viewtopic.php?t=380&p=7734

Hay un explicación de lo que está sucediendo aquí: OpenSSL: unable to verify the first certificate for Experian URL

Esencialmente sin embargo, el certificado funcionaría si estuvieras usando un cliente que admite certificados di scovery, y no necesita openssl para trabajar, solo para confirmar que ha hecho su certificación correcta, y lo ha hecho.

0

Quizás esté usando el certificado de desarrollo, necesita usar el certificado de servicio de inserción iOS de desarrollo de apple y también necesita crear .p12 desde este certificado, no desde el certificado de desarrollo.

Cuestiones relacionadas