关于java中调用openstack Rest api接口详解

调用openstack接口详解

OpenStack是一个开源的云计算管理平台项目,由几个主要的组件组合起来完成具体工作。OpenStack支持几乎所有类型的云环境,项目目标是提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。OpenStack通过各种互补的服务提供了基础设施即服务(IaaS)的解决方案,每个服务提供API以进行集成;
在这里对opensatck不进行过多的介绍,直接回答在java项目中调用openstack接口,接收返回参数解析的问题,openstack官网API地址https://www.openstack.org/,可以用谷歌浏览器打开进行中文翻译,但多少会影响阅读参数语义,建议结合文档进行参数配置
首页打开如图
具体使用方法请自行百度;
找到opensatckDocumention左侧导航栏为具体请求方法以及细节划分包含网络,镜像,用户,等等接口详解,点击所需案例
在这里插入图片描述
在这里对server接口进行案例讲解:
在这里插入图片描述
如图可以看到请求方式有GET/POST两种,其中拼接参数为servers,
前缀请求地址要在部署服务器中获得,点击detail获取详细参数,
在这里插入图片描述
包含请求响应码,请求参数,其中optional为可选,参考数据库所需字段可填可不填,其中body字段为请求体中携带,path字段URL携带,
本图为server请求示例
请求示例中以JSON格式包含了server对象,name,flavorref,network(这里必须为对象形式),其他可不填,请求示例已经给出,怎么在这里测试呢?
我们需要结合Postman工具进行请求测试,具体下载地址请百度,在这里不做详解

如图其中post为请求方式,请求URL要拼接servers,请求体中拼接需要与示例中一致

在这里插入图片描述
当全部参数一一对应后,会返回json格式的响应码,看下api示例

在这里插入图片描述 在代码中需要Httpclient工具类对请求url进行编辑,请求头中需要携带Token信息需要注意的是,请求示例有版本限制,不同版本请求方式是不一样的,例如本段中networks属性示例虽然给出可天auto/none,但实际却强制需要填写[{uuid}]形式,需要对响应码进行解析,按所需字段进行保存,今天就先到这里,有问题欢迎评论