首页 > 解决方案 > 我该怎么做才能从一个 api 的两个端点获取 json 数据

问题描述

在实例的端点中,我需要每个安装的个人身份验证 url,这个我通过参数放置

parser.add_argument('-u', '--url', help='openstack api keystone url', required=True)
args = parser.parse_args()
user_url = args.url

具有 api 的这两个端点,:

# request url
req = {
"instance": user_url + "/servers".
"servers": user_url + "/servers/" + {id-instance} + "/diagnostics"}

{id-instance} 是在第一个端点出现的 json 数据:“instance”:user_url + “/servers”。

如何获取每个实例的 id,然后将其放入我需要它以查看详细指标的第二个端点,并为实例的每个 id 绘制第二个(或整数)的 json 数据?

我认为这将是创建一个列表,并在其中放入一个 for 实例的所有 id,然后再用另一个 for 为实例的每个 id 发出请求。

做第一个我做了这个:

try:
    result = requests.get(req["instance"], headers=headers)
    result_data = json.loads(result.content)
except Exception as e :
    print('0')
    sys.exit("\nError requesting %s, please check connectivity" %(req["instance"],))

instance_id=[]

for data in result_data["instance"] :
    id_instance.append(data['id']) 

我认为这很好,但我该怎么做第二个呢?

标签: pythonjsonapiopenstack

解决方案


推荐阅读