iOS 目标 C 中的错误域 = NSURLErrorDomain 代码 = -1012 "(null)"
Posted
技术标签:
【中文标题】iOS 目标 C 中的错误域 = NSURLErrorDomain 代码 = -1012 "(null)"【英文标题】:Error Domain=NSURLErrorDomain Code=-1012 "(null)" in iOS Objective C 【发布时间】:2016-08-23 07:31:46 【问题描述】:我用 POST 方法请求服务器,服务器响应我 401 状态码。我有错误 1012,我的回答是零。
//Send request
NSData* data = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
因此,我在 ios 目标 C 请求中找到了一些用于禁用和更改安全模式的代码,但不知道如何使用它以及在哪里设置代码。 请帮忙
AFSecurityPolicy *policy = [AFSecurityPolicy policyWithPinningMode:AFSSLPinningModeCertificate];
[policy setValidatesDomainName:NO];
[policy setAllowInvalidCertificates:YES];
[policy setValidatesCertificateChain:NO];
【问题讨论】:
你能提供一个请求 NSURL 吗?也许这个答案应该对你有所帮助:***.com/a/20296711/5433235 你在尝试使用http认证吗? 是的,我尝试验证 【参考方案1】:根据文档:
NSURLErrorUserCancelledAuthentication = -1012
Here is the error list
更多关于 HTTP 状态代码 401 = 未授权
【讨论】:
这没关系 if((error != nil && error.code == NSURLErrorUserCancelledAuthentication)||response.statusCode == 401) 但有几个值作为响应,我无法访问他们。【参考方案2】:首先,不要禁用证书验证。它不会解决你的问题。服务器拒绝客户端的身份验证,而不是相反。
其次,您的问题是用户的凭据不在钥匙串中,并且您没有提供委托方法来自己提供凭据。我不确定你是如何使用 AF API 做到这一点的,但你可以直接在 https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/URLLoadingSystem/Articles/AuthenticationChallenges.html 上了解你将如何做到这一点,并将其作为了解幕后发生的事情的起点。
【讨论】:
以上是关于iOS 目标 C 中的错误域 = NSURLErrorDomain 代码 = -1012 "(null)"的主要内容,如果未能解决你的问题,请参考以下文章
拒绝为目标域生成登录提示的权限。 ec2 实例中的谷歌身份验证错误