我正在开发一个应用程序,该应用程序具有多个KeychainItemWrapper实例,这些实例存储有同一应用程序的不同标识符。如果删除该应用程序并验证第一个标识符的TouchID,然后为另一个KeychainItemWrapper实例设置另一个,则我也可以使它正常工作。最终,TouchID将失去与正确标识符的同步(正在努力解决该问题),但是我的问题确实是这样的:
HTTP加载失败(错误代码:-1003)是什么意思?看起来TouchID可以验证,并且从钥匙串中拉出了正确的凭据,但是它只是抛出了该HTTP错误,而没有其他很多事情要做。我逐步执行代码,然后碰到砖墙,进入此代码:
NSString *currentLogin = [[NSUserDefaults standardUserDefaults] objectForKey:@"theIdentifierAlreadyStored"];
KeychainItemWrapper *keychainItem = [[KeychainItemWrapper alloc] initWithIdentifier:currentLogin accessGroup:nil];
NSData *passwordData = (NSData *)[keychainItem objectForKey:(__bridge id)kSecValueData];
dispatch_async(dispatch_get_main_queue(), ^{
AppDelegate_iPhone *appDelegate = (AppDelegate_iPhone *)[[UIApplication sharedApplication] delegate];
appDelegate.username = [keychainItem objectForKey:(__bridge id)kSecAttrAccount];
appDelegate.password = [[NSString alloc] initWithData:passwordData encoding:NSUTF8StringEncoding];
[iphoneLogin login];
});
在[iphoneLogin登录]上进行断点操作时,我可以看到用户名和密码正确。.然后调试器将无限期地介入此过程,直到我继续调试。.
从控制台:
2019-07-11 11:27:56.200100-0700 XSPOC [3745:927124] TIC TCP连接失败[7:0x283bed5c0]:12:8 Err(-65554)
2019-07-11 11:27:56.201002-0700 XSPOC [3745:927124]任务。<0> HTTP加载失败(错误代码:-1003 [12:8]) >
2019-07-11 11:27:56.206804-0700 XSPOC [3745:927124] NSURLConnection完成错误-代码-1003