2012-07-19 6 views
7

मुझे इस तरह की समस्या है: Apple Push Notification in Production Environment : Unable to get local issuer certificate लेकिन मेरे स्थानीय कंप्यूटर में। मैं इस ट्यूटोरियल का पालन किया: http://www.raywenderlich.com/3443/apple-push-notification-services-tutorial-part-12 लेकिन इस चरण मेंरिटर्न कोड सत्यापित करें: 20 (स्थानीय जारीकर्ता प्रमाणपत्र प्राप्त करने में असमर्थ)

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

इसे कहते हैं: 20 (स्थानीय जारीकर्ता प्रमाण पत्र प्राप्त करने में असमर्थ)

:

सत्यापित करें वापसी कोड (एक संख्या और अक्षरों का बहुत कुछ)

समस्या क्या है? धन्यवाद

उत्तर

15

समस्या यह है कि आप "सैंडबॉक्स" एपीएनएस सर्वर का उपयोग कर रहे हैं जिसका उपयोग विकास के लिए किया जाता है।

उत्पादन प्रमाणपत्रों का परीक्षण करने के लिए आपको उत्पादन एपीएनएस सर्वर से कनेक्ट करना होगा।

बजाय gateway.push.apple.com:2195gateway.sandbox.push.apple.com:2195

+0

मुझे यह समस्या है, लेकिन मैं विकास प्रमाण पत्र का उपयोग कर रहा हूं हालांकि @gabcas – GangstaGraham

+0

सुनिश्चित करें कि आपने [सही चरणों] का पालन किया है (http://www.raywenderlich.com/3443/apple-push-notification-services -ट्यूटोरियल-भाग -12) विकास प्रमाणपत्र बनाने/निर्यात करने के लिए। इसके अलावा, आप उत्पादन प्रमाण पत्र और उत्पादन सर्वर का प्रयास कर सकते हैं। यदि आपको लगता है कि त्रुटि का कोई अन्य कारण है तो कृपया हमें बताएं। – GabCas

+0

यह पता चला कि त्रुटि यह थी कि, मैं निजी कुंजी के साथ एक पासवर्ड का उपयोग कर रहा था, मैंने सोचा था कि यह आवश्यक था, क्योंकि कीचेन एक्सेस ने एक के लिए पूछा था, लेकिन जब मैंने पासवर्ड के बिना एक नई निजी कुंजी बनाई, तो सबकुछ काम करता था। :) – GangstaGraham

14

यह एक समस्या नहीं है: आप पते का उपयोग कर सकते हैं। वास्तव में, यह पुष्टि है कि आपका प्रमाणपत्र काम कर रहा है। अगर यह काम नहीं करने के लिए थे आप कुछ इस तरह मिलेगा:

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: 

एक उदाहरण के लिए इस ट्यूटोरियल देखें http://lessons.runrev.com/s/lessons/m/4069/l/53405-how-do-i-use-push-notifications-with-ios

या यदि आप रे से यह सुनना चाहते हैं http://www.raywenderlich.com/forums/viewtopic.php?t=380&p=7734

वहाँ एक है यहां क्या हो रहा है इसका स्पष्टीकरण: OpenSSL: unable to verify the first certificate for Experian URL

अनिवार्य रूप से, यदि आप क्लाइंट का उपयोग कर रहे थे तो प्रमाण पत्र काम करेगा जो प्रमाणपत्र डी का समर्थन करता है वसूली, और आपको काम करने के लिए openssl की आवश्यकता नहीं है, बस यह पुष्टि करने के लिए कि आपने अपना प्रमाण सही बनाया है, और आपने यह किया है।

0

शायद आप विकास प्रमाण पत्र का उपयोग कर रहे हैं, तो आपको सेब डेवलपमेंट आईओएस पुश सेवा प्रमाण पत्र का उपयोग करने की आवश्यकता है और आपको विकास प्रमाण पत्र से नहीं, इस प्रमाणपत्र से .p12 बनाने की आवश्यकता है।

संबंधित मुद्दे

 संबंधित मुद्दे