无法解析.json使用twilio发送的消息列表


router.get(
"/send",
async (req, res) => {
client.messages
.list({ limit: 20 })
.then((messages) => messages.forEach((m) => console.log(m.body)));
});

我正在使用twilio,并且想要res.json(m.body)。问题是,它只适用于第一个元素(正如res.json中所预期的那样(。它可能非常琐碎,但我尝试过push、spread运算符,但无法找到解决方案。

这里是Twilio开发人员的传道者。

您不能对每条消息都呼叫res.json(m.body),因为第一次呼叫res.jsonExpress将完成响应。

试试类似的东西:

router.get(
"/send",
async (req, res) => {
client.messages
.list({ limit: 20 })
.then((messages) => res.json(messages.map((m) => m.body)));
});

这会将消息列表映射到消息主体列表,并使用res.json返回整个列表。

编辑:

如果您想将m.bodym.to的列表保存到稍后使用的变量中,可以执行以下操作:

router.get("/send", async (req, res) => {
client.messages.list({ limit: 20 }).then((messages) => {
const data = messages.map((m) => ({ body: m.body, to: m.to }));
res.json(data);
});
});

在这种情况下,我们将消息映射为具有tobody键的对象数组。然后,该数组被分配给data变量,我们稍后使用该变量返回res.json(data)

最新更新