2012-12-01 15 views
6

मैं आईफ़ोन एप्लिकेशन विकसित करने के लिए एएफनेटवर्किंग का उपयोग कर रहा हूं जो HTTPS कनेक्शन स्थापित करता है, मैं स्वयं हस्ताक्षरित प्रमाण या विश्वसनीय प्रमाण का उपयोग करना चाहता हूं जिसे मैं परिभाषित कर सकता हूं, लेकिन मुझे एएफनेटवर्किंग में कोई भी फ़ंक्शन (एपीआई) नहीं मिल सकता है।AFNetworking में .cer फ़ाइल को कैसे असाइन करें?

और मैंने यह पृष्ठ देखा: How to use NSURLConnection to connect with SSL for an untrusted cert? लेकिन मैं जानना चाहता हूं कि एक सीर फ़ाइल कैसे असाइन करें?

धन्यवाद।

+0

यहां एक नज़र डालें: http://stackoverflow.com/a/17267088/192819 – jpswain

उत्तर

2

बस अपने प्रोजेक्ट बंडल में सीर फ़ाइल कॉपी करें। AFURLConnectionOperation.m फ़ाइल, लाइन 215 में:

NSArray *paths = [bundle pathsForResourcesOfType:@"cer" inDirectory:@"."];

यह प्रमाणपत्र फ़ाइल स्वचालित रूप से आवंटित करेगा।

और यकीन है कि Prefix.pch है कि बनाने के इस प्रकार है:

#define _AFNETWORKING_PIN_SSL_CERTIFICATES_ 

और

#define _AFNETWORKING_ALLOW_INVALID_SSL_CERTIFICATES_ 

अगर अविश्वस्त प्रमाणपत्र।

+1

विच उपसर्ग में लाइन होना चाहिए ??? मैं Pods का उपयोग कर रहा हूं, इसलिए दो, एप्लिकेशन-प्रीफिक्स.pch और& AFNetworking-Prefix.pch .. –

+0

एप्लिकेशन-प्रीफिक्स.pch – alvinhu

3

ठीक है, बस सरल होने के लिए, का पालन करें इस कदम

  1. अपनी परियोजना बंडल

  2. करने के लिए अपने .cer फ़ाइल को कॉपी करें आप यह मानते हुए

    AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] init...

    उपयोग कर रहे हैं

    निम्नलिखित को आमंत्रित करें fter लाइन है कि:

    [operation setSSLPinningMode:AFSSLPinningModeCertificate]

यह वायुसेना हिदायत प्रमाणपत्र लगाए, और कुछ भी करने की कोई जरूरत नहीं करने के लिए होगा।

+0

मुझे समझ में नहीं आता कि AFNetworking कैसे जानता है कि –

+0

के विरुद्ध कौन सा प्रमाण पत्र जांचना है, आपका ऐप उस कॉर्ट को जोड़ता है जोर की श्रृंखला के लिए, यह स्वचालित रूप से बनाया जाता है ... –

+1

AFNetworking का उपयोग 2.3.1 मुझे विधि 'setSSLPinningMode' –

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

  • कोई संबंधित समस्या नहीं^_^