我能够使用此答案来帮助我使用客户端证书登录到我的应用程序。
Getting Client Certificate for Mutual Authentication with Alamofire
一切正常进行登录。现在,我需要再次请求上传文件。我使用了与上一篇文章相同的代码来获取p12文件,并创建serverTrustPolicy并将其添加到会话管理器中,但是当我发出请求时,服务器告诉我我没有将证书传递给他们。
我不明白为什么该代码只适用于一个实例,而不适用于另一个实例。两者之间的唯一区别是:
作品:
manager = Alamofire.SessionManager(serverTrustPolicyManager: ServerTrustPolicyManager(policies: serverTrustPolicy))
不起作用:
manager = Alamofire.SessionManager(configuration: configuration, serverTrustPolicyManager : ServerTrustPolicyManager(policies: serverTrustPolicy))
两者使用的didChallenge委托完全相同。
我将不胜感激。
最佳答案
因此,显然,该问题是由于具有配置和ServerTrustPolicyManager。当我只有STPM并将标题放置在上载函数中时,该调用就可以正常工作。尝试在应用程序中进行两次后台调用可能导致问题。默认和临时调用都可以正常工作。