2

对讲节点的文档https://github.com/intercom/intercom-node说我可以使用 client.users.list 或 client.users.listBy 或 client.users.find 访问我的用户数据。

问题是我在响应对象的正文中只获得了 50 个用户(即 resp.body.users.length 为 50),我需要所有用户。有谁知道如何查询 API 以从 intercom.io 应用程序获取所有用户?

var Intercom = require('intercom-client')
var client = new Intercom.Client('<APP ID>', '<API KEY>')

client.users.list( function(err, resp) { 
    console.log(resp.body.users.length)
})
4

1 回答 1

1

使用当前库版本2.11.2,可以通过指定页码并在使用后使用.listBy或使用分页对象https://github.com/intercom/intercom-node#pagination.list来检索下一页(下面的演示代码)

var Intercom = require('intercom-client');
var client = new Intercom.Client({ token: TOKEN });

client.users.listBy({page: 1}, printDetails);
client.users.listBy({page: 2}, printDetails);

client.users.list(printDetailsAndGetNextPage);
client.users.listBy({page: 1}, printDetailsAndGetNextPage);

function printDetails(d){
    var output = d.body;
    console.log("Page: " + output.pages.page + " out of " + output.pages.total_pages);
}

function printDetailsAndGetNextPage(d){
    var output = d.body;
    console.log("Page: " + output.pages.page + " out of " + output.pages.total_pages);
    if(output.pages.page < output.pages.total_pages) {
        console.log("Getting next page...");
        client.nextPage(output.pages, printDetails);
    }
    else {
        console.log("No more pages left");
    }
}

演示

于 2021-08-29T04:58:14.187 回答