使用promises递归列出所有AWS SNS订阅

时间:2017-04-06 17:39:13

标签: node.js amazon-web-services recursion

AWS SDK按returning 100 results and a NextToken string对结果进行分页。然后,您调用相同的方法,但传递此令牌,您将获得下一个结果。这种情况一直持续到没有令牌返回,此时你知道你已经到达列表的末尾。

我需要使用promises在Node.js中获得所有结果,但我对于.then()语法如何与递归调用一起工作感到困惑。

这是我到目前为止所做的,这是一个普通的非递归调用:

var params = {
    NextToken: null
}
sns.listSubscriptions(params).promise().then((list) => {
    let nextToken = list.NextToken
    if (nextToken) {
        // call this again
    }
}).catch((err) => {
    console.log(err)
})

0 个答案:

没有答案