android - 接收 IQ,错误 403,类型为 AUTH,用于上次查看的查询

标签 android xmpp openfire

我发送数据包给客户端,如下所示。

 <iq id="xoB6R-4" to="user1@xyz.xmpp" type="get">
       <query xmlns='jabber:iq:last'/>
</iq>

但作为回应,我收到了 erro4 403。

   <iq id="xoB6R-4" to="admin@xyz.xmpp/testchat" from="user2@xyz.xmpp" type="error">
     <query xmlns="jabber:iq:last"></query>
     <error code="403" type="AUTH">
           <forbidden xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/>
     </error>
  </iq>

这里有什么问题?

最佳答案

根据 http://www.xmpp.org/extensions/xep-0012.html ,请求实体需要订阅特定用户的存在信息,否则用户的服务器不得返回最后的 Activity 信息,而是必须返回错误以响应最后的 Activity 请求。

即使是管理员用户也需要订阅状态信息才能查看特定用户的最后 Activity 。

关于android - 接收 IQ,错误 403,类型为 AUTH,用于上次查看的查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27456263/

相关文章:

android - 如果使用 Proguard,Google Place API Status 会返回 NULL

android - Geocoder.getFromLocation 抛出异常

java - NullPointerException,简单的错误?

java - 如何处理播放音频文件时的运行时异常?

javascript - XEP-0077 使用 Strophe.js 和 openfire 进行带内注册

javascript - 在xmpp多聊天中,管理员角色仅授予在线用户已创建房间的成员资格?

android - 在 Android 中使用 XMPP 服务器发送/接收好友请求

c# - 良好的 C# XMPP 库,支持群聊和 TLS 或 SSL 加密

java - Openfire 插件集成

apache - 如何在 dojo 中启用 CORS 以连接到 Openfire