0
我正在嘗試向我的服務器上的API發出HTTPS請求。我有自簽名證書。我的理解是,當http傳輸會遇到SSL信任問題時,下面的委託方法會被調用。NSUrlSessionDelagate質詢代理方法不叫
func URLSession(_ session: NSURLSession,
didReceiveChallenge challenge: NSURLAuthenticationChallenge,
completionHandler completionHandler: (NSURLSessionAuthChallengeDisposition,
NSURLCredential?) -> Void)
如果上述方法不存在於委託中,那麼將調用任務級挑戰函數。
由於某些原因,任何挑戰功能都沒有被調用。我可以在輸出中看到大量CFNetwork SSLHandshake失敗(-9801)錯誤。
我完全知道如何禁用ATS。但我目前的目標不是禁用自簽名證書。我有興趣在挑戰功能中處理它。
是否有什麼特殊的事情需要完成,以便在ssl信任問題發生時引發挑戰功能?是的,適當的委託被分配給NSUrlSession對象。