【发布时间】:2019-07-16 15:55:49
【问题描述】:
我想通过 BlueData 安装使用 BlueData API 以编程方式管理。
我看过一些文档 here - 看来我需要从 获取会话 开始,但我希望在获取会话之前创建一个会话。
如何创建会话并在后续操作中使用它?
【问题讨论】:
标签: bluedata-3.7 bluedata
我想通过 BlueData 安装使用 BlueData API 以编程方式管理。
我看过一些文档 here - 看来我需要从 获取会话 开始,但我希望在获取会话之前创建一个会话。
如何创建会话并在后续操作中使用它?
【问题讨论】:
标签: bluedata-3.7 bluedata
问题中列出的 API 文档未显示用于创建会话的 API 调用。但是,可以在here 找到创建会话的说明,但我也会在此答案中添加详细信息,以防链接消失。
请注意,如果您正在运行 BlueData 安装,则可以浏览完整的 BlueData API 文档:
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 -d@login.json 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
设置会话 ID:
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"}},...
另见:
【讨论】: