如何将所有Twilio消息媒体链接存储到阵列中?
我当前的实现方式是
exports.handler = function(context, event, callback) {
//...
var mediaUrls = [];
for (var i = 0; i < event.NumMedia; i++) {
var m = eval("(typeof event.MediaUrl"+i+" !== 'undefined')? event.MediaUrl"+i+" : ''");
if (m !== '') mediaUrls.push(m);
}
//...
}
但是使用eval
并不是一个好习惯,因为
评估可能是有害的。
是否有其他解决方案可以在不使用eval
的情况下做到这一点?
答案 0 :(得分:0)
这里是Twilio开发人员的传播者。
您可以使用方括号表示法来代替在每个媒体URL上使用eval
和点表示法来调用。因此,除了执行以下操作之外,您还可以执行以下操作:
var mediaUrls = [];
for (var i = 0; i < event.NumMedia; i++) {
if (typeof event["MediaUrl"+i] !== 'undefined') {
mediaUrls.push(event["MediaUrl"+i]);
}
}
让我知道是否有帮助。