2016-04-13 18 views
1

ServerTrustPolicy.certificatesInBundle() tarafından tanınan projem için bir .der sertifikası ekledim. Bu önceSertifika çalışmıyor Alamofire çalışmıyor

private class func manager() -> Alamofire.Manager { 
    let certificates = ServerTrustPolicy.PinCertificates(
     certificates: ServerTrustPolicy.certificatesInBundle(), 
     validateCertificateChain: true, 
     validateHost: true 
    ) 

    let serverTrustPolicies: [String: ServerTrustPolicy] = [ 
     "api.oursite.com": certificates 
    ] 

    let configuration = NSURLSessionConfiguration.defaultSessionConfiguration() 

    let manager = Alamofire.Manager(
     configuration: configuration, 
     serverTrustPolicyManager: ServerTrustPolicyManager(policies: serverTrustPolicies) 
    ) 

    return manager 
} 

sadece Alamofire.request(... kullanıyordu ve bu istekleri mükemmel iyi çalışıyor, ama şimdi her çağrı üzerine bana bir hata veriyor: Şimdi o zaman API çağrıları yapmak için kullanılan bir Yöneticisi yaratıyorum :

Error Domain=NSURLErrorDomain Code=-999 "cancelled"

ben yanlış yöneticisi kurma muyum? Belki de sertifikam yanlış oluşturuldu ve bu işe yaramayacak mı?

cevap

2

manager numaranızın, istek üzerine kısa bir sürede ayrılmamış olduğundan emin olun. Örneğin, özel Yönetici sınıfında depolanmış özellik olarak yapın.