Flussonic

Watcher API - BadRequest

watcher

#1

Подскажите, в чём ошибка.
Я выполняю api-запрос, что бы выключить камеру:

curl user:password -X PUT http://127.0.0.1:8080/vsaas/api/v2/cameras/CAM-1 -d “enabled”:False -H “content-type: application/json” -H “x-vsaas-api-key:a0614fa9-10b2-4adf-abf4-fa4528494e”

Но в ответ получаю ошибку:

curl: (3) Illegal port number
{“error_message”:“The browser (or proxy) sent a request that this server could not understand.”,“error_code”:“BadRequest”}

Что я делаю не так?


#2

У вас запрос построен некорректно, попробуйте следующим образом:

curl ‘http://127.0.0.1/vsaas/api/v2/cameras/CAM-1’ -X PUT -H ‘Content-Type: application/json’ -H ‘x-vsaas-session: your-session-id’ --data-binary ‘{“enabled”:false}’


#3

Спасибо, попробую.

Я обратил внимание, что в вашем примере вместо x-vsaas-api-key, используется другой заголовок x-vsaas-session, как я могу получить его значение?


#4

Добрый день.
Получить x-vsaas-session можно следующим запросом:
curl -i http://127.0.0.1/vsaas/api/v2/auth/login -H 'Content-Type: application/json' --data-binary '{"login":"admin", "password":"12345"}'

ответ:

  "groups_count": 0,
  "notification_email": null,
  "session": "Z-aCeqoKapk-DhfnqS6GVT0",
  "is_admin": true,
  "login": "admin"

Где session, это x-vsaas-session для пользователя admin.


#5

Спасибо что разжевали, я разобрался.

Это все действительно описано в документации: https://flussonic.github.io/watcher-docs/api.html
С помощью вашего API я вставил просмотр камер в личный кабинет нашего корпоративного портала, теперь наши сотрудники получаются доступ ко всем доступным камерами из единого портала, а не кучки микросервисов со своими админками.