listStep API,标记无效。

0

【以下的问题经过翻译处理】 我正在使用EMR API中的boto3 python库中的listSteps功能。我将"1"赋值给Marker项,但收到错误消息:"Marker '1' is not valid."。

在Marker中哪个值是合法的?

API:https://docs.aws.amazon.com/emr/latest/APIReference/API_ListSteps.html

profile picture
专家
已提问 4 个月前18 查看次数
1 回答
0

【以下的回答经过翻译处理】 Marker 字符串的作用是方便分页,因为列表 API 只会返回 50 个 Step,只有在您的列表 Step API 调用 'ClusterId' 时有超过 50 个Step才有用。

比如你的 list_steps API 响应中有超过 50 个Step,它也会返回一个 'Marker' 元素和 50 个Step的列表。随后的 'list_steps' API 调用将传递您在之前响应中获得的 'Marker' 字符串,这次将为集群获取下一个 50 个Step。您可以循环遍历页面,直到收到最后一个响应,其中响应将不会有 'Marker' 元素。

您可以使用 Paginators 自动迭代页面,无需设置 'Marker'。下面是一个参考示例代码,在示例中,它将按顺序打印每个响应中的所有Step详细信息。

cluster_id='j-*************'
client = boto3.client('emr', region_name='us-west-2')
paginator = client.get_paginator('list_steps')
page_iterator = paginator.paginate(ClusterId = cluster_id)
for page in page_iterator:
  print(page['Steps'])
profile picture
专家
已回答 4 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则