ejabberd mod_http_api остаточный запрос

Я пытаюсь сделать несколько запросов на отдых (без OAuth), но ответ ejabberd всегда "HTTP/1.1 400 Bad Request"

Вот подробности:

версия ejabberd: 16.02

настройка ejabberd

port: 5280
    ip: "::"
    module: ejabberd_http
    request_handlers:
      ##"/websocket": ejabberd_http_ws
      ##"/oauth": ejabberd_oauth
      "/api": mod_http_api
    ##  "/pub/archive": mod_http_fileserver
    web_admin: true
    http_bind: true
    http_poll: true
    ## register: true
    captcha: false
    commands_admin_access: configure
    commands:
      - add_commands: user
    oauth_expire: 3600
    oauth_access: all

Запрос

curl -v -X POST -H "X-Admin: true" -H "Authorization: Basic YWRtaW5AcHJqLmlvOmFkbWlu"  -H "Content-Type:application/json" http://prj.io:5280/api/status -d '{}'

Журналы

2016-03-26 04:38:04.711 [debug] <0.490.0>@ejabberd_http:process_header:281 (#Port<0.16265>) http query: 'POST' <<"/api/status">>
2016-03-26 04:38:04.711 [debug] <0.490.0>@ejabberd_http:extract_path_query:395 client data: <<"{}">>
2016-03-26 04:38:04.711 [debug] <0.490.0>@ejabberd_http:process:353 [<<"api">>,<<"status">>] matches [<<"api">>]
2016-03-26 04:38:04.711 [info] <0.490.0>@mod_http_api:log:388 Admin call status [] from ::FFFF:192.168.117.1:53583

Пожалуйста, помогите мне понять поведение ejabberd и то, как отправлять запросы на mod_http_api.


person Luca    schedule 26.03.2016    source источник
comment
Я не могу сгенерировать токен, мучаюсь с этим почти 3 дня, и я новичок в ejabbberd, это конфигурация, которую я использую. порт: 5280 модуль: ejabberd_http request_handlers: /websocket: ejabberd_http_ws # Поддержка OAuth /oauth: ejabberd_oauth # ReST API: /api: mod_http_api ## /pub/archive: mod_http_fileserver web_admin: true http_bind: true register: true captcha: false commands_admin_access: configure команды: - add_commands: пользователь oauth_expire: 3600 oauth_access: все   -  person J P    schedule 23.05.2016
comment
Попробуйте реализовать этот ответ.   -  person Niranj Rajasekaran    schedule 24.05.2016


Ответы (2)


попробуй ниже...

commands_admin_access: configure
commands:
   - add_commands:
     - status
person Ton    schedule 23.05.2016

В Запросе, который вы предоставили,

curl -v -X POST -H "X-Admin: true" -H "Authorization: Basic YWRtaW5AcHJqLmlvOmFkbWlu" -H "Content-Type:application/json" http://prj.io:5280/api/status -d '{}'.

Такой конечной точки нет статус

Попробуйте выполнить одно из следующих действий в качестве конечной точки:

  1. num_active_users — количество активных пользователей за последние дни
  2. status_num_host — количество зарегистрированных пользователей с данным статусом на хосте
  3. status_num — количество зарегистрированных пользователей с данным статусом
  4. stats — получить статистическое значение: зарегистрированные пользователи, онлайн-пользователи, узел онлайн-пользователей, время безотказной работы в секундах stats_host — получить статистическое значение для каждого хоста: зарегистрированные пользователи, онлайн-пользователи, узел онлайн-пользователей, время безотказной работы в секундах
person Niranj Rajasekaran    schedule 24.05.2016