首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Twilio Chat API -获取带有分页的消息列表(pageNo,pageLimit )

Twilio Chat API -获取带有分页的消息列表(pageNo,pageLimit )
EN

Stack Overflow用户
提问于 2019-01-18 18:44:21
回答 1查看 853关注 0票数 1

我无法使用pageNumber和pageSize获取消息列表。它每次都会返回整个结果。有没有办法通过pageSize和pageNumber来查询数据?

代码语言:javascript
运行
复制
twilioClient.chat.services(TWILIO_CHAT_SERVICE_SID)
    .channels(req.params.id)
    .messages
    .list({
        pageSize: 2,
        page: 2
    }, (error, messages) => {
        if (error) {
            return res.status(error.status).json({
                message: 'Problem in getting messages',
                error: error
            });
        }

        if (Utility.isEmptyObject(messages)) {
            return res.status(404).send('Messages not found');
        }

        res.status(200).json({
            message: 'Messages retrieved sucessfully',
            docs: messages
        });
    });

我想查询一下pageSize和pageNumber的结果。同时,如果我发送REST API调用,它会用pageSize返回结果,但pageNumber在这里也不起作用。

代码语言:javascript
运行
复制
let limitCount = parseInt(req.query.limit > 0 ? req.query.limit : 10); // limitValue
let pageNo = parseInt(req.query.pageNo > 0 ? req.query.pageNo : 0);

let options = {
    method: 'GET',
    url: 'https://chat.twilio.com/v2/Services/IS/Channels/' +
        'CH2f/Messages?Page=' + pageNo + '&PageSize=' + limitCount,
    headers:
    {
        'cache-control': 'no-cache',
        Authorization: 'Token'
    }
};

request(options, function (error, response, body) {

    console.log(body);

    if (error) {
        //console.error("There was an error loading the channels.", error);
        return res.status(error.status).json({
            message: 'Problem in getting messages',
            error: error
        });
    }

    if (Utility.isEmptyObject(response)) {
        return res.status(404).send('Messages not found');
    }

    res.status(200).json({
        status: 'Messages retrieved sucessfully',
        messages: JSON.parse(body)
    });
});

任何帮助都是非常感谢的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-01-19 07:08:58

Twilio开发者的布道者在这里。

Twilio资源不支持基于页码的分页。相反,数据页面将包含next_page_uriprevious_page_uri属性。您可以使用PageSize参数控制页面大小。

使用这些库时,您可以让它们为您自动分页。例如:

代码语言:javascript
运行
复制
twilioClient.chat.services(TWILIO_CHAT_SERVICE_SID)
  .channels(req.params.id)
  .messages
  .list({
    limit: 400,
    pageSize: 100
  });

最终将调用该API 4次,以返回400条消息。

您可以阅读有关pagination of Twilio resources in the docs.的更多信息

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54252305

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档