Как работать с сессиями с BlueData REST API?

Я хотел бы использовать API BlueData для программного управления установкой BlueData.

Я видел некоторую документацию здесь - похоже, мне нужно для начала с Извлечение сеанса, но я ожидаю, что сеанс будет создан до того, как я смогу его получить.

Как создать сеанс и использовать его в последующих операциях?


person Chris Snow    schedule 16.07.2019    source источник


Ответы (1)


Введение

Документы API, перечисленные в вопросе, не показывают вызов API для создания сеанса. Однако инструкции по созданию сеанса можно найти здесь, но я также добавляю подробности в этот ответ на случай, если ссылка исчезнет.

Обратите внимание, что вы можете просмотреть полную документацию BlueData API, если у вас уже установлена ​​BlueData:

http://<controller-ip>/apidocs/

В любом случае шаги по созданию сеанса и использованию сеанса в последующем вызове, таком как Получить всех арендаторов, перечислены ниже:

Создать сеанс

Напишите файл login.json:

cat <<EOF> ./login.json
{
     "name": "admin",
     "password": "admin123"
}
EOF

Установите IP-адрес контроллера:

# Set this to your controller IP address

CONTROLLER_IP=10.0.0.1 

Затем вы можете отправить запрос на вход:

curl -i -X POST [email protected] http://${CONTROLLER_IP}:8080/api/v1/login

Возвращает

HTTP/1.1 201 Created
Server: BlueData EPIC 3.7
Location: /api/v1/session/df1bfacb-xxxx-xxxx-xxxx-c8f57d8f3c71
Date: Mon, 15 Jul 2019 16:47:54 GMT
Content-Type: text/plain
Content-Length: 13
Access-Control-Allow-Origin: *

201 Created

Установите ИДЕНТИФИКАТОР СЕССИИ:

SESSION_ID=/api/v1/session/df1bfacb-xxxx-xxxx-xxxx-c8f57d8f3c71

Используйте сеанс, чтобы получить список арендаторов

Используйте SESSION ID в последующем вызове, например.

curl -X GET -H "X-BDS-SESSION:${SESSION_ID}" http://${CONTROLLER_IP}:8080/api/v1/tenant

Этот пример для меня возвращает:

{"_links":{"self":{"href":"/api/v1/tenant"}},...

Смотрите также:

person Chris Snow    schedule 16.07.2019