Mailcore 2 错误“此服务器的证书无效。” iOS

Posted

技术标签:

【中文标题】Mailcore 2 错误“此服务器的证书无效。” iOS【英文标题】:Mailcore 2 error "The certificate for this server is invalid." iOS 【发布时间】:2013-09-16 20:16:12 【问题描述】:

我尝试使用以下代码通过 IMAP 协议从我的公司电子邮件中获取邮件:

MCOIMAPSession *session = [[MCOIMAPSession alloc] init];
[session setHostname:@"imap.mymail.com"];
[session setPort:993];
[session setUsername:@"accidbright@mymail.com"];
[session setPassword:@"password"];
[session setConnectionType:MCOConnectionTypeTLS];
MCOIMAPFetchMessagesOperation * fetchOperation = [session fetchMessagesByUIDOperationWithFolder:inboxFolder requestKind:MCOIMAPMessagesRequestKindHeaders uids:searchResult];
[fetchOperation start:^(NSError *error, NSArray *messages, MCOIndexSet *vanished) 
    if (error) 
        NSLog(@"Fetching all the message subjects error: %@!", error);
     else 
        NSLog(@"Fetched all the messages subjects!");
    
];

我得到错误:

Fetching all the message subjects error: Error Domain=MCOErrorDomain Code=4 
"The certificate for this server is invalid." UserInfo=0x7889ab0 
NSLocalizedDescription=The certificate for this server is invalid.!

我知道,我们的邮件是用域证书签名的,所以在域之外它是未经验证的证书。但几乎所有使用邮件的应用程序(例如 Mac Mail)都有“继续”按钮,这允许跳过证书验证并使用邮箱。所以我感兴趣的是在 MailCore 2 中有没有可能做到这一点?如果是,我该怎么做?

顺便说一句,我在使用 MailCore 的时候没有这个问题。

【问题讨论】:

【参考方案1】:

你真的应该在MailCore 2's GitHub page 上打开一个问题。试试:

[session setCheckCertificateEnabled:NO];

【讨论】:

以上是关于Mailcore 2 错误“此服务器的证书无效。” iOS的主要内容,如果未能解决你的问题,请参考以下文章

iphone:安全的restfull服务器“此服务器的证书无效

iPhone上的“不受信任的服务器证书”

ios 11禁止访问无效证书的https

JS Fetch API 禁用 SSL 证书

mailcore2 imap 错误域=MCOErrorDomain 代码=5

MailCore 的 Shell 脚本调用错误