我使用XMPP构建聊天应用程序。在尝试登录时,我发现我的JID实例始终为空。因此,我可以连接服务器,但不能正确地进行身份验证。
self.xmppStream.myJID = [XMPPJID jidWithString:@"efeuser"];
NSLog(@"%@",self.xmppStream.myJID.user);它将myJID记录为null。
我还尝试使用register包在Openfire上创建一个新用户,但用户JID也为空。
<iq xmlns="jabber:client" type="error" to="bowerchat.com/3df1adfc">
<query xmlns="jabber:iq:register">
<username/>
<password>efe1414</password>
</query>
<error code="500" type="wait">
<internal-server-error xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/>
</error>
</iq>发布于 2015-08-02 03:07:38
JID可以有两种形式:
user@example.com
example.com如果它们包含@,则@之前的部分是userpart。但也可以省略userpart,就像在第二个示例中一样。这通常用于直接寻址主机。
self.xmppStream.myJID = [XMPPJID jidWithString:@"efeuser"];这将创建一个没有userpart的新userpart。这意味着:
NSLog(@"%@",self.xmppStream.myJID.user);正确打印(null),因为没有用户部分。
https://stackoverflow.com/questions/31762854
复制相似问题