Ios Alamofire-证书固定错误:可选(错误域=NSURLErrorDomain代码=-999“已取消”;
我不熟悉swift和证书钉扎 我已经创建了Ios Alamofire-证书固定错误:可选(错误域=NSURLErrorDomain代码=-999“已取消”;,ios,swift,ssl,alamofire,pinning,Ios,Swift,Ssl,Alamofire,Pinning,我不熟悉swift和证书钉扎 我已经创建了.der这样的认证openssl s_client-showcerts-connect www.github.com:443githubcom.der 并导入到我的项目中 然后创建SessionManager 引自 调试输出: Alamofire.DefaultDataResponse(请求:可选(), 响应:无,数据:可选(0字节),错误:可选(错误 域=nsurErrorDomain代码=-999“已取消” UserInfo={NSErrorFail
.der
这样的认证openssl s_client-showcerts-connect www.github.com:443githubcom.der
并导入到我的项目中
然后创建SessionManager
引自
调试输出:
Alamofire.DefaultDataResponse(请求:可选(),
响应:无,数据:可选(0字节),错误:可选(错误
域=nsurErrorDomain代码=-999“已取消”
UserInfo={NSErrorFailingURLKey=,,
NSLocalizedDescription=已取消,
NSErrorFailingURLStringKey=}),时间线:时间线:
{“请求开始时间”:524040427.202,“初始响应时间”:
524040427.234,“请求完成时间”:524040427.234,“序列化完成时间”:524040427.235,“延迟”:0.032秒,“请求
持续时间:0.032秒,“序列化持续时间”:0.001秒,“总计”
持续时间:0.033秒},_度量:零)
我做错了什么?如我所见。您正在对url使用get方法。但是,该url中没有任何内容。请使用不同的url重试。不同的url存在相同的问题。您确定url有数据吗?是的,如果我在没有证书的情况下尝试,我会在控制台中打印HTML响应。对于正常的get请求,您解决了吗?
let serverTrustPolicies: [String: ServerTrustPolicy] = [
"github.com": .pinCertificates(
certificates: ServerTrustPolicy.certificates(),
validateCertificateChain: true,
validateHost: true
)
]
let sessionManager = SessionManager(serverTrustPolicyManager: ServerTrustPolicyManager(policies: serverTrustPolicies))
sessionManager.request("https://github.com").response { response in // method defaults to `.get`
debugPrint(response)
}