Если это только для тестирования в процессе разработки вы можете создать категорию на NSURLRequest и переопределить следующий частный метод:
#if DEBUG
@implementation NSURLRequest (NSURLRequestWithIgnoreSSL)
+ (BOOL)allowsAnyHTTPSCertificateForHost:(NSString *)host
{
return YES;
}
@end
#endif
Просто поместите это где-нибудь в одном из ваших .m файлов (например, приложение делегата), или поместите его в собственный файл .m. Вам не нужен соответствующий файл заголовка.
#if DEBUG
является обязательным условием для предотвращения случайного оставления его при отправке в Apple, но если вам нужно, чтобы он работал в сборке релиза, удалите его (и убедитесь, что вы не забыли его восстановить или удалить эту категорию перед тем, как отправить в Apple).
+1, я просто отклонил свое приложение из-за использования «private api» (допускает метод AnyHTTPSCertificateForHost). – Yanchi
Я дважды упомянул в своем ответе, что это решение должно использоваться только для тестирования. В любом случае, указывая свое живое приложение на HTTPS-сервере с ненадежным сертификатом, он обеспечивает нулевую безопасность, поэтому вы можете просто использовать HTTP вместо этого. –