OGeek|极客世界-中国程序员成长平台

标题: ios - XMPPFramework 和 OpenFire 服务器,身份验证工作,连接挂起 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 15:21
标题: ios - XMPPFramework 和 OpenFire 服务器,身份验证工作,连接挂起

我正在尝试使用 XMPPFramework for iOS 连接到 OpenFire 服务器。 连接建立,身份验证完成(强制到普通),但在身份验证之后发送了一个重新协商包,没有响应。 我尝试在 StackOverflow、google 和 OpenFire 支持上进行搜索,但找不到任何有用的东西。

我的 XML 转储(来自应用程序):

2012-07-26 13:07:26:745 iPhoneXMPP[1777:707] iPhoneXMPPAppDelegate: xmppStream:socketDidConnect:
2012-07-26 13:07:26:749 iPhoneXMPP[1777:1c03] SEND: <?xml version='1.0'?>
2012-07-26 13:07:26:750 iPhoneXMPP[1777:1c03] SEND: <stream:stream xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams' version='1.0' to='xmpp.mobile-engineering.nl'>
2012-07-26 13:07:26:981 iPhoneXMPP[1777:1b03] RECV: <stream:stream xmlns:stream="http://etherx.jabber.org/streams" xmlns="jabber:client" from="xmpp.mobile-engineering.nl" id="153cc75d" stream1:lang="en" version="1.0"/>
2012-07-26 13:07:27:107 iPhoneXMPP[1777:1c03] RECV: <stream:features xmlns:stream="http://etherx.jabber.org/streams"><starttls xmlns="urn:ietf:params:xml:ns:xmpp-tls"/><mechanisms xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><mechanism>DIGEST-MD5</mechanism><mechanism>LAIN</mechanism><mechanism>CRAM-MD5</mechanism></mechanisms><compression xmlns="http://jabber.org/features/compress"><method>zlib</method></compression><auth xmlns="http://jabber.org/features/iq-auth"/></stream:features>
2012-07-26 13:07:27:113 iPhoneXMPP[1777:707] iPhoneXMPPAppDelegate: xmppStreamDidConnect:
2012-07-26 13:07:27:116 iPhoneXMPP[1777:707] SEND: <auth xmlns="urn:ietf:params:xml:ns:xmpp-sasl" mechanism="LAIN">AGhvcHNhAGhvcHNh</auth>
2012-07-26 13:07:27:219 iPhoneXMPP[1777:1b03] RECV: <success xmlns="urn:ietf:params:xml:ns:xmpp-sasl"/>
2012-07-26 13:07:27:220 iPhoneXMPP[1777:1b03] SEND: <stream:stream xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams' version='1.0' to='xmpp.mobile-engineering.nl'>

最后一条消息是发送给服务器的,它在那里结束。 当我询问 XMPPFramework 的状态是什么时,我得到:STATE_XMPP_OPENING

我从上面的 XML 转储中得到的是身份验证成功。但下一步不是……

我在这里做错了什么?



Best Answer-推荐答案


我已经用下一页提到的补丁修复了它: https://github.com/robbiehanson/XMPPFramework/issues/81

似乎框架发送了消息,但没有监听它。我已经实现了补丁,现在可以登录 OpenFire 服务器了!

关于ios - XMPPFramework 和 OpenFire 服务器,身份验证工作,连接挂起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11667997/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (https://ogeek.cn/) Powered by Discuz! X3.4