操作无法完成。 (kCFStreamErrorDomainSSL 错误 -9847。)使用 xmpp 聊天在 ejabberd 中注册新用户时
Posted
技术标签:
【中文标题】操作无法完成。 (kCFStreamErrorDomainSSL 错误 -9847。)使用 xmpp 聊天在 ejabberd 中注册新用户时【英文标题】:The operation couldn’t be completed. (kCFStreamErrorDomainSSL error -9847.) while registering new user in ejabberd using xmpp chat 【发布时间】:2015-12-31 10:47:17 【问题描述】:我正在尝试在 ejabberd 服务器中注册新用户以进行 xmpp 聊天,但出现此错误
The operation couldn’t be completed. (kCFStreamErrorDomainSSL error -9847.)
当这个方法被调用时
-(void)xmppStreamDidDisconnect:(XMPPStream *)sender withError:(NSError *)error
NSLog(@"%@",error.localizedDescription);
请帮我解决这个问题
【问题讨论】:
【参考方案1】:您使用的是自签名证书,因此您的客户不信任该证书。
您可以在委托方法xmppStream:didReceiveTrust:completionHandler:
中实现自己的信任验证算法
XMPPFramework 有关安全性的文档将为您提供一些详细信息:https://github.com/robbiehanson/XMPPFramework/wiki/Security
通过调用值为@YES
的完成处理程序,您将接受证书。请注意不要在您的代码中永久更改该更改,以免在您的代码中引入安全问题。
【讨论】:
以上是关于操作无法完成。 (kCFStreamErrorDomainSSL 错误 -9847。)使用 xmpp 聊天在 ejabberd 中注册新用户时的主要内容,如果未能解决你的问题,请参考以下文章
NSValidationMissingMandatoryPropertyError - 操作无法完成。 (可可错误 1570。)