一日在项目中调试后台的文件上传接口不成功,返回 Error Domain=NSURLErrorDomain Code=-999 “cancelled” UserInfo…… 错误。
先以为是 mimeType 问题,尝试多次修改 mimeType 毫不奏效。后来想到会不会是后台使用的 SSL 证书问题?
之所以这些想,是因为之前在 Postman 中调接口时发现,必须在设置中关闭 SSL 证书校验才能访问接口。
于是将 AFHTTP 的证书校验选项关闭,果然 Ok:
AFSecurityPolicy *securityPolicy = [AFSecurityPolicy defaultPolicy];
securityPolicy.validatesDomainName = NO;
securityPolicy.allowInvalidCertificates = YES;
manager.securityPolicy = securityPolicy;
以上代码允许 AFN 不进行证书验证,以规避 evaluateServerTrust: forDomain:方法的验证。
对于一些“伪 https”接口(比如“xxx智慧工地”项目)根本就没有有效的 SSL 证书(或者证书失效了),自然也就无法通过 evaluateServerTrust 校验,因此只能让 AFH 不要校验服务器证书。
转载:https://blog.csdn.net/kmyhy/article/details/103650900
查看评论