2012-12-01 15 views
6

Tôi đang sử dụng AFNetworking để phát triển ứng dụng iPhone thiết lập kết nối HTTPS, tôi muốn sử dụng cert tự tin hoặc cert tin cậy mà tôi có thể xác định, nhưng tôi không thể tìm thấy bất kỳ chức năng (API) nào trong AFNetworking.Cách gán tệp .cer trong AFNetworking?

Và tôi thấy trang này: How to use NSURLConnection to connect with SSL for an untrusted cert?. Nhưng tôi muốn biết cách chỉ định tệp cer?

Cảm ơn.

+0

có một cái nhìn tại đây: http://stackoverflow.com/a/17267088/192819 – jpswain

Trả lời

2

Chỉ cần sao chép tệp cer trong gói dự án của bạn. Trong AFURLConnectionOperation.m tập tin, dòng 215:

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

Nó sẽ chỉ định tập tin cer tự động.

Và chắc chắn rằng Prefix.pch có sau:

#define _AFNETWORKING_PIN_SSL_CERTIFICATES_ 

#define _AFNETWORKING_ALLOW_INVALID_SSL_CERTIFICATES_ 

nếu cert không tin cậy.

+1

Tiền tố nên có dòng ??? Tôi đang sử dụng Pod để có hai, Application-Prefix.pch && AFNetworking-Prefix.pch .. –

+0

Application-Prefix.pch – alvinhu

3

Vâng, chỉ để được đơn giản, hãy làm theo các bước này

  1. Sao chép tập tin cer của bạn để bó dự án của bạn

  2. Giả sử bạn đang sử dụng

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

    Gọi sau đây fter lót:

    [operation setSSLPinningMode:AFSSLPinningModeCertificate]

này sẽ hướng dẫn AF để làm giấy chứng nhận Ghim cho, không cần phải cài đặt bất cứ điều gì khác.

+0

Tôi không hiểu cách AFNetworking biết chứng chỉ nào cần kiểm tra với –

+0

Ứng dụng của bạn thêm các chứng chỉ mà nó tìm thấy với chuỗi lực đẩy, nó được tạo tự động ... –

+1

Sử dụng AFNetworking 2.3.1 Tôi không thấy phương thức 'setSSLPinningMode' –

Các vấn đề liên quan