我一直在使用React Webapp来发送大量SMS消息。基本摘要:上传CSV文件,从中提取电话号码并映射它们,然后可以使用Twilio将文本发送到电话号码。我上次测试时,一切正常。
由于各种原因,我已经有一段时间没有接触过应用程序的那部分了。看完手机后,我上一次实际测试SMS功能的时间是5月26日。今天,当我进行测试时,我在终端中收到以下错误消息:
TypeError:undefined不可迭代(无法读取属性Symbol(Symbol.iterator))
在Function.all()
在/ Users / [me] /furlane_tool/client/server/index.js:30:11
有问题的行是Promise.all行。我从六月开始打开了一个较旧的版本(我可以访问的最旧版本),并且我必须对node进行一些更新才能使某些功能正常工作(即eslint)。它仍然显示错误。当我将行更改为小写的“ promise”作为测试时,我收到“ ReferenceError:未定义promise”。
我想知道从那时起,Node或React是否有所变化,以及它们如何处理Promise,或者我是否在尝试使其他不相关的功能正常工作时弄乱了代码。它确实在终端中映射了数字。
相关代码:
app.post('/test', (req, res) => {
res.header('Content-Type', 'application/json');
const numbers = req.body.to;
console.log("This is the to numbers:" + numbers);
Promise.all(
console.log(numbers[0]),
numbers[0].map(number => {
console.log("Numbers mapped:", number);
return client.messages.create({
to: number,
from: process.env.TWILIO_PHONE_NUMBER,
body: req.body.body
});
})
)
.then(messages => {
console.log('Messages sent!');
})
.catch(err => console.error(err));
});
让我知道您是否需要代码的任何其他部分!
答案 0 :(得分:1)
Promise.all()应该带有数组参数