如何将所有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
评估可能是有害的。
有没有其他解决方案可以做到这一点 评估 ?
评估
Twilio开发者布道者。
eval 和点表示法调用每个媒体的URL可以使用方括号表示法。因此,你可以做以下事情,而不是你所拥有的:
var mediaUrls = []; for (var i = 0; i < event.NumMedia; i++) { if (typeof event["MediaUrl"+i] !== 'undefined') { mediaUrls.push(event["MediaUrl"+i]); } }
如果有什么帮助,请告诉我。