XMPP框架 - 登录Openfire服务器时出现"<not-authorized>"错误提示

4
我在我的Mac上安装了Openfire服务器并进行了所有配置。当我尝试通过XMPP协议连接时,我收到以下错误日志。
RECV: <failure xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><not-authorized/></failure>

我注意到在登录响应中,我的用户名为null,请查看下面的日志记录。
decoded response: username="(null)",realm="172.16.0.162",nonce="EFYJmP/oVfVKnhvuenmxVEBwH7VzYMET5j1cUqJ/",cnonce="DE5E4A14-3B6E-4239-B6AB-0B8BC1D75539",nc=00000001,qop=auth,digest-uri="xmpp/nivas",response=a64dcc45fef55811788d8784546baf29,charset=utf-8

有人能告诉我我在这里做错了什么,还有什么建议吗?

谢谢


你是用什么登录的?是你自己的应用程序还是类似 Adium 或 Psi 的东西?如果是你自己的代码,请发布相关部分。 - Marc
我正在尝试使用从Google Codes下载的XMPP示例,在本地主机上创建模拟聊天功能。我已在Openfire管理控制台中创建了一个用户帐户,现在正在尝试使用该创建的用户帐户登录。 - nik
我猜你指的是XMPPFramework,这是一个Objective-C库。请发布来自您的Xcode项目的相关代码 - 您在其中登录XMPP服务器。问题更可能出现在那里,而不是Openfire本身。 - Marc
6
现在我解决了这个问题。问题在于通过的用户名格式是错误的。我发送的用户名类似于"username@hostname",然后它开始工作了。 - nik
1个回答

4

对于使用iOS的XMPPFramework的用户,如果收到以下消息:

<failure xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><not-authorized/></failure>

请在每个用户ID的末尾添加您的服务器域名,例如:

keithoys@openfire

这样做可以解决此问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接