我在我的应用程序中使用Alamofire,并且必须使用公共证书固定。到目前为止,我已经实现了以下代码。
我的域名是 api.xx.xxx.com
private static var manager: SessionManager? {
let url = Configuration.baseUrl
IFLOG(url.getDomain()!)
let serverTrustPolicy = ServerTrustPolicy.pinCertificates(
certificates: ServerTrustPolicy.certificates(),
validateCertificateChain: true,
validateHost: true
)
let serverTrustPolicies: [String: ServerTrustPolicy] = [
url.getDomain()!: serverTrustPolicy
]
let config = URLSessionConfiguration.default
return SessionManager(configuration: config, serverTrustPolicyManager: ServerTrustPolicyManager(policies: serverTrustPolicies))
}
这里,我的问题是如何获取主机的公钥以及Xcode中保存的格式(cer或der)以及Alamofire如何选择此公钥。
谢谢