Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 使用承诺递归列出所有AWS SNS订阅_Node.js_Amazon Web Services_Recursion - Fatal编程技术网

Node.js 使用承诺递归列出所有AWS SNS订阅

Node.js 使用承诺递归列出所有AWS SNS订阅,node.js,amazon-web-services,recursion,Node.js,Amazon Web Services,Recursion,AWS SDK按对结果进行分页。然后调用相同的方法,但传递此令牌,然后获得下一个结果。这将一直持续到没有返回令牌为止,此时您知道您已到达列表的末尾 我需要使用Promissions在Node.js中获得所有结果,但我对.then()语法如何处理递归调用感到困惑 这就是我到目前为止所做的,这是一个普通的非递归调用: var params = { NextToken: null } sns.listSubscriptions(params).promise().then((list) =&g

AWS SDK按对结果进行分页。然后调用相同的方法,但传递此令牌,然后获得下一个结果。这将一直持续到没有返回令牌为止,此时您知道您已到达列表的末尾

我需要使用Promissions在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)
})

我也有同样的问题,这是一个有帮助的答案:@peterschulten这正是我想要的。谢谢。我也有同样的问题,这是一个有帮助的答案:@peterschulten这正是我想要的。谢谢