xmpp - Ejabberd api端点private_set不会保存数据
问题描述
我正在尝试操作 ejabberd 服务器上的私有存储,我将带有 json 的 POST 发送到端点 private_set。调用 private_set 的答案是 200,body 0,表示一切正常,然后我调用另一个端点 private_get 来查询私有存储,当我最后一次调用时,存储没有更新。
{
"user": "example",
"host": "localhost",
"element": "<query xmlns='jabber:iq:private'><storage xmlns='storage:bookmarks'><conference autojoin='false' jid='test@conference.localhost' name='test'><nick>example</nick></storage></query>"
}
解决方案
我不知道旧版本,但至少在 ejabberd 19.02 中,Query 元素不能包含在参数中。因此,命令示例参数的文档中存在错误。此外,您忘记关闭会议元素。
试试这个:
{
"user": "example",
"host": "localhost",
"element": "<storage xmlns='storage:bookmarks'><conference autojoin='false' jid='test@conference.localhost' name='test'><nick>example</nick></conference></storage>"
}
推荐阅读
- python - Kivy 中小部件的位移
- php - 从捕获的组中提取值
- ios - 如何根据消息的长度更改 messageCell 的宽度?在迅速 4
- r - knitr::kable() 中的短标题
- java - 如何使用 FFMPEG 的 Java 包装库为 HLS 创建主播放列表
- python - Python3错误的导入路径
- python-2.7 - 使用 shell 启动进程,检测到可能的注入,安全问题
- php - Woocommerce 中我的帐户订单列表上的条件取消按钮
- c# - Arduino 使用 c# SerialPort.Write() 在标准固件上写入
- mysql - 选择所有没有 information_schema 的表