【发布时间】:2015-06-25 21:27:16
【问题描述】:
- (NSString *)baseURL 从文件中提取字符串。
NSString *endpoint = @"/authentication.json";
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
NSString *token = @"mytokenvalue"
[manager.requestSerializer setValue:token forHTTPHeaderField:TOKEN_HEADER];
manager.requestSerializer = [AFJSONRequestSerializer serializer];
NSString *path = [NSString stringWithFormat:@"%@%@", [self baseURL], endpoint];
[manager POST:path
parameters:nil
success:^(AFHTTPRequestOperation *operation, id responseObject) {
if (operation.response.statusCode == 200) {
[self.delegate validated:true];
}
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
[self.delegate validated:false];
}];
(lldb) po 错误 错误域=NSURLErrorDomain 代码=-1012“操作无法完成。(NSURLErrorDomain 错误-1012。)”UserInfo=0x7bf3ed90 {NSErrorFailingURLKey=https://1.2.3.4/authentication.json, NSErrorFailingURLStringKey=https://1.2.3.4/authentication.json}
我可以在我的终端中通过 VPN 连接到 1.2.3.4,但不能通过 AFNetworking。我试过 1.2.3.4 和 https://1.2.3.4.
我有
[AFHTTPRequestOperationManager manager].securityPolicy.allowInvalidCertificates = YES;
在我的应用委托中。
如何通过 AFNetworking 连接到此 IP?
编辑:验证证书链的要点。
我禁用了它并验证AFSecurityPolicy.m中的域名
确认 db) po [AFHTTPRequestOperationManager manager].securityPolicy.SSLPinningMode
AFSSLPinningModeNone 也保留为 None。
【问题讨论】:
-
我没有看到您在代码中设置安全策略的位置。
-
根据list of error codes,您的身份验证已取消
NSURLErrorUserCancelledAuthentication = -1012。所以我会尝试将validatesCertificateChain设置为NO -
[AFHTTPRequestOperationManager manager].securityPolicy.allowInvalidCertificates = YES;电话在哪里? -
在 App Delegate 中分配窗口 rootViewController 并调用 makeKeyAndVisible 之前
-
您可能无法使用模拟器,因为网络接口属于 Mac OS。
标签: ios objective-c afnetworking