https访问证书问题
NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9802)
在info.plist中添加
NSAppTransportSecurity NDictionary
NSAllowsArbitraryLoads Boolean YES
NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9807)
遵守NSURLConnectionDelegate NSURLConnectionDataDelegate协议
#pragma mark-NSURLConnectionDelegate
- (BOOL)connection:(NSURLConnection *)connection canAuthenticateAgainstProtectionSpace:(NSURLProtectionSpace *)protectionSpace
{
NSLog(@"处理证书");
return [protectionSpace.authenticationMethod isEqualToString:NSURLAuthenticationMethodServerTrust];
}
- (void)connection:(NSURLConnection *)connection didReceiveAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge
{
if ([challenge.protectionSpace.authenticationMethod isEqualToString:NSURLAuthenticationMethodServerTrust]) {
[challenge.sender useCredential:[NSURLCredential credentialForTrust:challenge.protectionSpace.serverTrust] forAuthenticationChallenge:challenge];
} else {
[challenge.sender cancelAuthenticationChallenge:challenge];
}
}
#pragma mark-NSURLConnectionDataDelegate
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data
{
//请求获取的数据
NSLog(@"%@", [NSJSONSerialization JSONObjectWithData:data options:(NSJSONReadingMutableContainers) error:nil]);
}
[NSURLConnection sendAsynchronousRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"https://chanyouji.com/api/trips/featured.json?page=1"]] queue:[NSOperationQueue currentQueue] completionHandler:^(NSURLResponse * response, NSData * data, NSError * connectionError) {
NSLog(@"%@", [NSJSONSerialization JSONObjectWithData:data options:(NSJSONReadingMutableContainers) error:nil]);
}];
The one who wants to wear a crown must bear the weight!