Доброго времени суток, друзья. Столкнулся со странной проблемой. В приложении iOS требуется подписать запрос сертификатом, который до этого был получен. Использую MKNetworkKit.
- (void)startConnection {
NSString *serverURL = @"host.ru/method";
MKNetworkEngine *engine = [[MKNetworkEngine alloc] initWithHostName:serverURL customHeaderFields:nil];
MKNetworkOperation *op = [engine operationWithPath:nil params:nil httpMethod:@"GET" ssl:YES];
NSString *thePath = [[NSBundle mainBundle] pathForResource:@"client" ofType:@"p12"];
[op setShouldContinueWithInvalidCertificate:YES];
op.clientCertificate = thePath;
op.clientCertificatePassword = @"1234qwerty";
[op addCompletionHandler:^(MKNetworkOperation *operation) {
NSLog(@"[operation responseData]-->>%@", [operation responseString]);
}errorHandler:^(MKNetworkOperation *errorOp, NSError* err) {
NSLog(@"MKNetwork request error : %@", [err localizedDescription]);
}];
[engine enqueueOperation:op];
}
сваливается в лог ошибка:
Moscow Standard Time
Request
-------
curl -X GET 'https://host.ru/method', [The operation couldn’t be completed. (NSURLErrorDomain error -1012.)]
Если выполнять такой запрос через расширение к Google Chrome
Advanced REST Client, который позволяет использовать этот же сертификат, то все выполняется корректно.
Не могу понять в чем проблема.