我已设置-允许任意加载为是
我正在使用以下代码来触发请求:
let apiAddress = somehttpsAddress
let configuration = URLSessionConfiguration.default
configuration.timeoutIntervalForRequest = 30 // seconds
configuration.timeoutIntervalForResource = 30 //seconds
AFManager = Alamofire.SessionManager(configuration: configuration)
AFManager.request(apiAddress , method: .post, parameters: body, encoding: JSONEncoding.default, headers: header).responseJSON { response in
// utility
}
但是我得到的只是这些错误:
TIC SSL Trust Error [1:0x60c000161c80]: 3:0
NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9813)
我不明白这里缺少什么,应该如何纠正。请帮助我纠正此问题。
答案 0 :(得分:2)
如果您连接到某些公共网络或校园网络,则它们可能已安装了一些限制软件,例如Cyberoam。您提出请求的地址可能受到限制。您可以请求访问该特定网站的权限。
答案 1 :(得分:0)
这里的问题是Alamofire认为这不是有效的ssl证书。尝试将其用作管理员:
private static var Manager : Alamofire.SessionManager = {
// Create the server trust policies
let serverTrustPolicies: [String: ServerTrustPolicy] = [
"your domain goes here": .disableEvaluation
]
// Create custom manager
let configuration = URLSessionConfiguration.default
configuration.httpAdditionalHeaders = Alamofire.SessionManager.defaultHTTPHeaders
let man = Alamofire.SessionManager(
configuration: URLSessionConfiguration.default,
serverTrustPolicyManager: ServerTrustPolicyManager(policies: serverTrustPolicies)
)
return man
}()