【发布时间】:2017-04-24 15:31:08
【问题描述】:
我在调用 ejabberd 的“/api/get_roster”端点时收到 400 错误请求错误。在请求 oauth 令牌时,我将“get_roster”保留在范围内。
400 bad request error in ejabberd
我猜是权限有问题。这是我的配置文件:
https://www.dropbox.com/s/his89bx39qhvr1h/ejabberd2.yml?dl=0
我已尝试遵循官方文档。根据 API 权限指南,我还尝试添加以下属性:
api_permissions:
- "Admin access":
- who:
- admin
- what
- "\*"
- "!stop"
但没有任何变化。我有以下问题:
- 我在这里做错了什么?
- 什么是可能的范围?
【问题讨论】:
-
根据文档,注意::要使用 get_roster 范围,您需要启用 mod_admin_extra。否则,命令是未知的,你会得到一个 invalid_scope 错误。
-
我在 yml 文件的模块部分提到了 mod_admin_extra。我没有收到 invalid_scope 错误。我能够获得令牌。只是当我在对 API Endpoint 的 POST 调用中使用该令牌时,它显示 400 bad request。
-
您使用的是什么版本的 ejabberd?
-
我使用的是 ejabberd 16.01。
标签: ejabberd ejabberd-api