javascript - 如何填充 twilio 传真结果数组并通过 express 发送?

标签 javascript node.js express promise twilio

我正在尝试从 twilio api 获取结果,如下所示:twilio => 我们的安全 api 后端 => 我们的客户端应用程序 我们这样做是为了投影我们的 api key 和其他基于安全的目的。

我们发送传真,并检查单个实例。然而,我很难获取完成后发送回客户端应用程序的传真列表。主要是因为这是一个重复调用。到目前为止,我们已经解决了这个问题:

app.post('/fax', function (req, res) {
  const faxList = [];
  const getFax = client.fax.faxes.each((faxes) => {
    faxList.push(faxes);
    console.log(faxList);
  });

现在,当我运行此命令时,我看到数组按照应有的方式一一填充,但完成后似乎无法返回最终结果。

从我的在线搜索看来,我需要利用 Promise.all 来发送我完成的 res.status(200).json(faxList); 所以 express 可以将传真列表发送到我们的应用程序。我在设置 Promise.all 时遇到问题,因为 faxList 变量只是空的。几乎就像调用完成后对数组所做的推送不会持续一样。

这与 twilio 设置传真 api 功能的方式有关吗? https://github.com/twilio/twilio-node/blob/master/lib/rest/fax/v1/fax.js或者我不明白promise.all是如何运作的?

我对 javascript 的 Node 端比较陌生。我对其他语言有更多的经验,所以我提前道歉。

最佳答案

如果您的传真少于一页,我会尝试获取整个列表。 (我认为 Twilio 中的一页是 50 ) 就像这样

return new Promise((resolve) => {
    client.faxes.list().then(function(faxes){
                        if (!empty(faxes)){
                           resolve(faxes);
                        }
                       });
});

关于javascript - 如何填充 twilio 传真结果数组并通过 express 发送?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50957069/

相关文章:

javascript - HTML 复选框的文本

javascript - 样式单选按钮 (CSS/jQuery)

node.js - Stylus ParseError : expected "indent", 得到 "outdent"

node.js - 尝试使用唯一索引保存 Mongoose 文档时, Node 服务器崩溃

node.js - 替换为 cassandra 中的更新

javascript - 如何在 JavaScript 中纯粹使用 Map 数据类型

javascript - 我可以在 javascript "class"的定义中使用 setInterval 吗?

node.js - 在 Mocha ExpressJS 测试期间获取 "Error: the string "不是有效的 BCrypt 哈希 ."was thrown, throw an Error :)"

javascript - Express 将在本地主机上正确设置 CORS,但不会在实时服务器上设置

node.js - 上传文件时获取 API 和 multer 错误